《算法笔记》例题解析 第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度
		}
	}
相关推荐
Bruce_kaizy17 分钟前
C++树形数据结构————树状数组、线段树中“逆序对”的问题
开发语言·数据结构·c++
FMRbpm22 分钟前
用栈实现队列
数据结构·c++·新手入门
添砖java‘’23 分钟前
常见的进程间通信方式详解
linux·c++·操作系统·信息与通信·进程通信
AA陈超23 分钟前
LyraStarterGame_5.6 Experience系统加载流程详细实现
c++·笔记·学习·ue5·虚幻引擎·lyra
浦东新村轱天乐24 分钟前
2025.12.08-2025.12.14:课题分离,不要在意外在评价。
笔记·职场发展
Learner__Q30 分钟前
每天五分钟:动态规划-LeetCode高频题_day2
算法·leetcode·动态规划
一韦以航.37 分钟前
C【指针】详解(上)
c语言·数据结构·c++·算法
martian6651 小时前
深入解析C++驱动开发实战:优化高效稳定的驱动应用
开发语言·c++·驱动开发
d111111111d1 小时前
STM32得中断服务函数,为什么不能有返回值
笔记·stm32·单片机·嵌入式硬件·学习
mit6.8241 小时前
固定中间
算法