题解 | #Problem B#
Problem B
http://www.nowcoder.com/practice/bcd4ec5971054997a1dc282067aa1d8b
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
int main() {
int m;
while (cin >> m) {
int n[m][m];
memset(n, 0, sizeof(n));
for(int i = 0; i < m; i++) {
for(int j = 0; j < m; j++) {
cin >> n[i][j];
}
}
int k = 2 * m + 2;
int sum[k];
memset(sum, 0, sizeof(sum));
for(int i = 0; i < m; i++) {
for(int j = 0; j < m; j++) {
sum[2*i] += n[i][j];
}
for(int j = 0; j < m; j++) {
sum[2*i+1] += n[j][i];
}
}
for(int d = 0; d < m; d++) {
sum[k-2] += n[d][d];
sum[k-1] += n[d][m-d-1];
}
sort(sum, sum + k);
for(int i = k-1 ; i >= 0; i--) {
printf("%d ", sum[i]);
}
printf("\n");
}
return 0;
}