PapaMelon #8 旋转矩阵 [rotate 的使用]
2021/7/13 13:05:49
本文主要是介绍PapaMelon #8 旋转矩阵 [rotate 的使用],对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
题目链接
- [旋转矩阵]
题解
- 经典题目了,选自 [PapaMelon 系统算法课程 - 基础版]。
- 二维数组看作一维,直接在一维数组上进行旋转,然后转为二维数组输出即可
#include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N = 1e6 + 5; int n, m, K, a[N]; void solve() { cin >> n >> m >> K; for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) cin >> a[i * m + j]; int tot = n * m; K %= tot; if (K) rotate(a, a + K, a + tot); for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) { cout << a[i * m + j]; char c = j == m - 1 ? '\n' : ' '; cout << c; } } int main() { int T; cin >> T; while (T--) solve(); return 0; }
这篇关于PapaMelon #8 旋转矩阵 [rotate 的使用]的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16ShardingSphere 如何完美驾驭分布式事务与 XA 协议?
- 2024-11-16ShardingSphere如何轻松驾驭Seata柔性分布式事务?
- 2024-11-16Maven资料入门指南
- 2024-11-16Maven资料入门教程
- 2024-11-16MyBatis Plus资料:新手入门教程与实践指南
- 2024-11-16MyBatis-Plus资料入门教程:快速上手指南
- 2024-11-16Mybatis资料入门教程:新手必看指南
- 2024-11-16MyBatis资料详解:新手入门与初级实战指南
- 2024-11-16MyBatisPlus资料:初学者入门指南与实用教程
- 2024-11-16MybatisPlus资料详解:初学者入门指南