《算法笔记》例题解析 第3章入门模拟--3图形输出(9题)2021-03-03

例题 旋转方阵

题目描述

Time Limit: 1000 ms

Memory Limit: 256 mb

打印出一个旋转方阵,见样例输出。

输入描述:

输入一个整数n(1 <= n <= 20), n为方阵的行数。

输出描述:

输出一个大小为n*n的距阵

输入

5

输出

1 16 15 14 13

2 17 24 23 12

3 18 25 22 11

4 19 20 21 10

5 6 7 8 9

代码
向右旋转90的矩阵的代码
cpp 复制代码
#include <cstdio>

int a[105][105];
int b[105][105];
int main(){
	int n,m;
	scanf_s("%d%d",&n,&m);
	for (int i = 1; i <= n;i++) {
		for (int j=1; j <= m; j++) {
			scanf_s("%d",&a[i][j]);
		}
	}
	for (int i = 1; i <= n; i++) {
		for (int j = 1; j <= m; j++) {
			b[j][n-i+1] = a[i][j];//右边旋转90度
		}
	}
	for (int i = 1; i <= m; i++) {
		for (int j = 1; j <= n; j++) {
			printf("%d ",b[i][j]);
		}
		printf("\n");
	}
	return 0;
}
cpp 复制代码
	for (int i = 1; i <= n; i++) {
		for (int j = 1; j <= m; j++) {
			b[n-i+1][n-j+1] = a[i][j];//右边旋转180度
		}
	}
相关推荐
程序员老陆4 分钟前
C++ 将亡值(xvalue)深度解析:从表达式分类到参数传递陷阱
c++·程序设计
嘎嘎风10 分钟前
MiniMind 学习笔记之 02 字是怎么变成数字的?
算法
QAQmmttyyy15 分钟前
ChatFly 开发实录 ⑧|一个 VAD 的自我修养
算法
Logic10124 分钟前
关于汉诺塔问题的分析
c语言·算法·递归·函数·解题思路·递归函数·汉诺塔问题
维克兜率天31 分钟前
【维克】配对交易的季节性:哪些品种适合长拿?
android·开发语言·笔记·python·算法·kotlin·量化
沫璃染墨44 分钟前
《Qt从零入门系列(十二):Qt文件操作详解——从QFile读写到QFileInfo与记事本实战》
开发语言·网络·c++·qt·交互·信号处理·文件
青少儿编程课堂1 小时前
树上启发式合并详解:子树颜色众数统计与复杂度拆解
c++·python·算法·bfs·信息学竞赛
hahaha60161 小时前
完美反射法--白平衡算法
人工智能·算法
路弥行至1 小时前
【Head First 设计模式】第 2 章:观察者模式 —— 用现代 C++ 重新解读“交互对象的松耦合
c++·经验分享·笔记·观察者模式·设计模式·入门教程·headfirst
YYYing.1 小时前
【设计模式系列 (九) 】装饰器模式
c++·后端·设计模式·装饰器模式·c/c++