Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
10665 | A班-许锘林 | 回形取数 | C++ | 运行超时 | 0 | 1000 MS | 1416 KB | 1089 | 2025-05-17 17:52:34 |
#include <bits/stdc++.h> using namespace std; #define N 500 int a[N][N]; int b[N][N] = {0}; int n,m; int main() { cin>>n>>m; for(int i = 0;i < n;i++) { for(int j = 0;j < m;j++) { cin>>a[i][j]; } } int temp = 0; int hang = 0,lie = 0; while(temp <= n * m) { while(hang < n && b[hang][lie] == 0) { if(temp >= n * m) { return 0; } cout<<a[hang][lie]<<" "; b[hang][lie] = 1; hang++; temp++; } hang--; lie++; while(lie < m && b[hang][lie] == 0) { if(temp >= n * m) { return 0; } cout<<a[hang][lie]<<" "; b[hang][lie] = 1; lie++; temp++; } lie--; hang--; while(hang >= 0 && b[hang][lie] == 0) { if(temp >= n * m) { return 0; } cout<<a[hang][lie]<<" "; b[hang][lie] = 1; hang--; temp++; } hang++; lie--; while(lie >= 0 && b[hang][lie] == 0) { if(temp >= n * m) { return 0; } cout<<a[hang][lie]<<" "; b[hang][lie] = 1; lie--; temp++; } hang++; lie++; } return 0; }