10 条题解
-
-1
有一个小坑点:数组不能用char,要用int否则最后一个点不能过
#include<bits/stdc++.h> #define int long long using namespace std; int n,q; int a[105][105]; void print() { for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { cout << a[i][j] << " "; } cout << '\n'; } } signed main() { cin >> n >> q; for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { cin >> a[i][j]; } } while(q--) { int x; cin >> x; if(x == 1) { for(int i = 1;i <= n;i++) { a[n + 1][i] = a[1][i]; } for(int i = 2;i <= n + 1;i++) { for(int j = 1;j <= n;j++) { a[i - 1][j] = a[i][j]; } } } else if(x == 2) { for(int i = 1;i <= n;i++) { a[0][i] = a[n][i]; } for(int i = n - 1;i >= 0;i--) { for(int j = 1;j <= n;j++) { a[i + 1][j] = a[i][j]; } } } else if(x == 3) { for(int i = 1;i <= n;i++) { a[i][n + 1] = a[i][1]; } for(int i = 1;i <= n;i++) { for(int j = 2;j <= n + 1;j++) { a[i][j - 1] = a[i][j]; } } } else if(x == 4) { for(int i = 1;i <= n;i++) { a[i][0] = a[i][n]; } for(int i = 1;i <= n;i++) { for(int j = n - 1;j >= 0;j--) { a[i][j + 1] = a[i][j]; } } } else if(x == 5) { int p[105][105]; for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { p[i][n - j + 1] = a[j][i]; } } for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { a[i][j] = p[i][j]; } } } else if(x == 6) { int p[105][105]; for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { p[i][n - j + 1] = a[j][i]; } } int p2[105][105]; for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { p2[i][n - j + 1] = p[j][i]; } } for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { a[i][j] = p2[i][j]; } } } else { int p[105][105]; for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { p[i][n - j + 1] = a[j][i]; } } int p2[105][105]; for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { p2[i][n - j + 1] = p[j][i]; } } int p3[105][105]; for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { p3[i][n - j + 1] = p2[j][i]; } } for(int i = 1;i <= n;i++) { for(int j = 1;j <= n;j++) { a[i][j] = p3[i][j]; } } } print(); cout << '\n'; } return 0; }
信息
- ID
- 2956
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 649
- 已通过
- 166
- 上传者