day 9 模拟和高精度

news2024/11/19 1:35:10

P4924 [1007]魔法少女小Scarlet

题目描述

Scarlet 最近学会了一个数组魔法,她会在 n×n 二维数组上将一个奇数阶方阵按照顺时针或者逆时针旋转 90∘。

首先,Scarlet 会把 1 到 n^2 的正整数按照从左往右,从上至下的顺序填入初始的二维数组中,然后她会施放一些简易的魔法。

Scarlet 既不会什么分块特技,也不会什么 Splay 套 Splay,她现在提供给你她的魔法执行顺序,想让你来告诉她魔法按次执行完毕后的二维数组。

输入格式

第一行两个整数 n,m,表示方阵大小和魔法施放次数。

接下来 m 行,每行 4 个整数 x,y,r,z,表示在这次魔法中,Scarlet 会把以第 x 行第 y 列为中心的 2r+1阶矩阵按照某种时针方向旋转,其中 z=0 表示顺时针,z=1 表示逆时针。

输出格式

输出 n 行,每行 n 个用空格隔开的数,表示最终所得的矩阵

输入输出样例

输入 #1复制

5 4
2 2 1 0
3 3 1 1
4 4 1 0
3 3 2 1

输出 #1复制

5 10 3 18 15
4 19 8 17 20
1 14 23 24 25
6 9 2 7 22
11 12 13 16 21

说明/提示

对于50%的数据,满足 r=1

对于100%的数据 1≤n,m≤500,满足  n1≤x−r≤x+r≤n,1≤y−r≤y+r≤n。

 

#include<bits/stdc++.h>
using namespace std; 

int n, m, a[505][505], f[505][505]; 
int main()
{
	cin >> n >> m;
	int num = 1;
	for(int i=1; i<=n; i++)
	    for(int j=1; j<=n; j++)
	        a[i][j] = num++; //初始化 
	for(int k=0; k<m; k++){
		int x, y, r, z;
		cin >> x >> y >> r >> z;
	    if(z == 0){ //顺时针
		    for(int i=x-r; i<=x+r; i++)
		   	    for(int j=y-r; j<=y+r; j++)
		   		    f[x-y+j][x+y-i] = a[i][j];    
		}else if(z == 1){ //逆时针 
			for(int i=x-r; i<=x+r; i++)
		   	    for(int j=y-r; j<=y+r; j++)
		   		    f[x+y-j][y-x+i] = a[i][j];
		}
		for(int i=x-r; i<=x+r; i++)
		   	    for(int j=y-r; j<=y+r; j++)
		   		    a[i][j] = f[i][j];	
	}
	for(int i=1; i<=n; i++){ 
	    for(int j=1; j<=n; j++)
		    cout << a[i][j] << " ";
	    cout << endl;
    }
	return 0;
}

!!因为是绕着中心旋转的,因此周围转动坐标的变化与中心坐标有关(即找与中心坐标和或差的规律) !!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/110987.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

带您认识spreadsheet专属的数据仓库,助力报表开发好帮手

业务主题是针对业务的一个概念&#xff0c;它将同一数据源中属于同一个分析主题的表或表中的字段组合在一起&#xff0c;为进一步的可视化数据集提供基本元素。 业务主题我们看作是 Smartbi 产品中的数据仓库&#xff0c;主要应用于可视化数据集等操作。 业务主题的应用场景有如…

佳缘线上超市网站

成品详细信息 开发工具(eclipse/idea/vscode等)&#xff1a; 数据库(sqlite/mysql/sqlserver等)&#xff1a; 功能模块(请用文字描述&#xff0c;至少200字)&#xff1a; 基于SPRINGBOOTE的佳源线上超市管理系统的设计与实现 模块划分&#xff1a;公告类型模块、公告信息模块…

【Pycharm教程】在 PyCharm 中使用 Emacs 作为外部编辑器

Emacs是一个高级的文本编辑器&#xff0c;可以让你全面地操作你的代码。使用 Emacs 意味着可以根据您用于编码的语言进行完全可调整的编辑。 本文介绍了如何将 Emacs 添加到 PyCharm 并使用它来修改您的代码。 最新版本的 Emacs 可以从官网下载安装。 将 Emacs 配置为外部编…

介绍在全志A40i Ubuntu系统上定制文件系统的操作过程

为了给客户的测试和开发提供便利&#xff0c;飞凌嵌入式的开发板产品一般都支持多种操作系统&#xff0c;以基于全志T507H处理器设计研发的OKT507-C开发板为例&#xff0c;它支持三种操作系统&#xff0c;分别是&#xff1a;Linux、Android 和 Forlinx Desktop&#xff08;Ubun…

stm32cubemx hal学习记录:电机控制

一、基础配置 1、配置RCC、SYS&#xff0c;SYS的Timebase Source选择TIM6 2、配置USART1、时钟84MHz 3、激活FreeRTOS&#xff0c;选择CMSIS_V1&#xff0c;Config parameters种USE_TIMERS选择ENABLE 二、编码器及电机驱动引脚配置 1、选用TIM3的编码器模式 2、驱动使用L2…

以数据赋能业务,qlik为企业搭建透明绩效管理平台

自从各类金融APP出现以来&#xff0c;分支机构网络的性质已经发生了巨大的变化。下一代分支机构通常是围绕着深化客户关系的愿景建立起来的&#xff0c;这些愿景包括理财方面的建议&#xff0c;以及企业和家庭贷款等更大的承诺&#xff0c;同时提供现金和交易设施。由于分支机构…

2022-12-23 工作记录--CSS-超出多行显示省略号ios真机偶失效问题

CSS-超出多行显示省略号ios真机偶失效问题 一、前言 最近帮同事解决一个了bug&#xff1a;在ios真机上&#xff0c;超出多行显示省略号的文本内容&#xff0c;偶然会出现未显示问题。 最开始&#xff0c;我没往 超出多行显示省略号 样式方面进攻&#xff0c;还以为是react渲染…

离散数学图论的练习题详解

文章目录学习技巧图论练习学习技巧 坚持 图论练习 一颗树有2个2度结点&#xff0c;1个3度结点和3个4度结点&#xff0c;则1度结点数为&#xff08;&#xff09; 知识点&#xff1a;握手定理&#xff1a;所有节点度数之和等于边数的两倍解答&#xff1a;221334x2(213x−1)2\…

亚马逊首次亮相中性原子量子计算机Aquila

Aquila处理器内饰&#xff08;图片来源&#xff1a;网络&#xff09; 亚马逊网络服务&#xff08;AWS&#xff09;将在其名为Amazon Braket的特殊云服务器中托管量子计算机Aquila。这是量子计算第一次可以直接从AWS云端访问中性原子量子处理器。 而提供这台量子计算机的公司是Q…

数字化时代,看商业智能BI与业务发展分析

每一家企业我们都可以从模式、问题和求解这三个角度对企业的业务经营管理进行探讨&#xff0c;比如模式&#xff0c;公司目前的管理模式和运营模式效果如何&#xff0c;是否符合公司长期战略目标或中短期业绩增长目标&#xff1f; 数据分析 - 派可数据商业智能BI可视化分析平台…

12项数据安全国标全文来了

二十大报告是新时代党和国家事业发展的理论指南和行动纲领&#xff0c;报告强调&#xff0c;“强化经济、重大基础设施、金融、网络、数据、生物、资源、核、太空、海洋等安全保障体系建设”、“加强个人信息保护”等。“数据安全”与“个人信息保护”被提到前所未有的高度&…

说话人识别的数据需求

概述 机器学习领域名言“Garbage In, Garbage Out!”不论神经网络多么先进&#xff0c;如果输入是垃圾&#xff0c;那么输出也一定是垃圾在说话人识别领域&#xff0c;所需的最小数据单元&#xff0c;包括&#xff1a; 一段只包含单一说话人语音的音频&#xff0c;被称为Utter…

RocketMQ

q RocketMQ 1. RocketMQ简介 官网&#xff1a; http://rocketmq.apache.org/ RocketMQ是阿里巴巴2016年MQ中间件&#xff0c;使用Java语言开发&#xff0c;RocketMQ 是一款开源的分布式消息系统 &#xff0c;基于高可用分布式集群技术&#xff0c;提供低延时的、高可靠的消息…

如何通过链路追踪进行定时任务诊

背景简介 什么是定时任务 定时任务是业务应用系统中存在定时周期性运行的业务逻辑。由于其运行于后端进程中往往存在执行状态和执行链路的不可见性《常见定时任务技术方案》。 什么是链路追踪 随着分布式微服务化架构在企业中大规模运用&#xff0c;业务运行的应用平台是一…

基于GINA/凭证提供程序的自助密码管理

大多数组织依赖于密码自助管理工具来跟踪用户的密码相关日常 事务。但是&#xff0c;另一方面&#xff0c;大多数自助解决方案只能从web浏览器进行访问。因此&#xff0c;已锁定的用户被迫从同事的工作站或用web浏览器从自助服务终端重置其密码。这与自助密码管理的意图背道而驰…

两级电力市场环境下计及风险的省间交易商最优购电模型(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

【小程序】声明式和编程式导航传参

目录 声明式导航 1. 导航到 tabBar 页面 2. 导航到非 tabBar 页面 3. 后退导航 编程式导航 1. 导航到 tabBar 页面 ​编辑 2. 导航到非 tabBar 页面 3. 后退导航 ​编辑 导航传参 1. 声明式导航传参 2. 编程式导航传参 ​编辑 3. 在 onLoad 中接收导航参数 声明式…

pandas对于文件数据基本操作,数据处理常用

基本操作 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple &#xff08;安装包&#xff09; 清华安装 例如 pip3 install --index-url https://pypi.douban.com/simple pandas国内的其他镜像源 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/ 阿里云 http://m…

作为程序员的你,常用的软件有哪些?

作为一个合格程序员的你&#xff0c;必须要有一套用起来得心应手的软件工具&#xff0c;有了好的工具才能够让自己的工作效率达到事半功倍的效果。下面我以常见的编程开发软件和数据库管理软件为例&#xff0c;简单介绍几种&#xff0c;感兴趣的朋友可以尝试一下&#xff1a;一…

并发编程学习(六):park、unpark

1、 park、unpark介绍 park、unpark它们是LockSupport类中的方法&#xff0c;内部调用的是Unsafe类中的native方法。 // 暂停当前线程&#xff0c;暂停后&#xff0c;线程状态变为 WAITING LockSupport.park(); // 恢复某个线程的运行&#xff0c;恢复后线程状态变为RUNNING Lo…