[计蒜客(蓝桥杯省赛)]矩阵旋转

题目来源 计蒜客程序设计竞赛基础课(蓝桥杯省赛)

算法标签

题目描述

给出一个n×m的整数矩阵,请你把这个矩阵顺时针旋转90度以后输出。

输入格式

第一行输入两个整数 n,m(1 < n, m< 200)n,m(1≤n,m≤200),用空格隔开。

接下来 n 行,每行输入 m 个整数,表示输入的矩阵。矩阵中元素都是 int 范围内的整数。

输出格式

输入 m 行,每行 n 个空格隔开的整数,表示旋转以后的矩阵。注意:每行末尾不能输出多余的空格。

样例输入

3 4
-1 3 6 3
7 7 9 1
10 3 4 6

样例输出

10 7 -1
3 7 3
4 9 6
6 1 3

思路

1.重点不在于变更矩阵顺序,在于输出想要的矩阵顺序即可。
2.注意格式,矩阵边缘不能输出多余的空格

题目代码

#include <iostream>

using namespace std;
int main() {
	int m, n;
	cin >> m >> n;
	int a[500][500];
	for (int p = 0; p < m; p++)
		for (int q = 0; q < n; q++)
			cin >> a[p][q];
		
	
	for (int j = 0; j < n; j++)
	{
		for (int i = m - 1; i >= 0; i--)
			if(!i)cout << a[i][j];//最右侧
			else cout << a[i][j]<< " ";
		cout << endl;
	}
  
	return 0;
}
发布了180 篇原创文章 · 获赞 19 · 访问量 5783

猜你喜欢

转载自blog.csdn.net/weixin_43910320/article/details/105320708