Caso # | Resultado | Tiempo | Memoria |
---|---|---|---|
#1 |
Correcto
|
0.005 s | 1 KBi |
#2 |
Correcto
|
0.005 s | 1 KBi |
#3 |
Correcto
|
0.005 s | 1 KBi |
#4 |
Correcto
|
0.005 s | 1 KBi |
#5 |
Correcto
|
0.005 s | 1 KBi |
#6 |
Correcto
|
0.005 s | 61 KBi |
#7 |
Correcto
|
0.004 s | 1 KBi |
#8 |
Correcto
|
0.004 s | 1 KBi |
#9 |
Correcto
|
0.004 s | 1 KBi |
#10 |
Correcto
|
0.005 s | 1 KBi |
#11 |
Correcto
|
0.004 s | 1 KBi |
#12 |
Correcto
|
0.004 s | 1 KBi |
#13 |
Correcto
|
0.005 s | 1 KBi |
#14 |
Correcto
|
0.005 s | 1 KBi |
#15 |
Correcto
|
0.005 s | 1 KBi |
#16 |
Correcto
|
0.006 s | 1 KBi |
#17 |
Correcto
|
0.005 s | 1 KBi |
#18 |
Correcto
|
0.006 s | 1 KBi |
#19 |
Correcto
|
0.008 s | 1 KBi |
#20 |
Correcto
|
0.008 s | 1 KBi |
#include <iostream> using namespace std; #define D(x) cout << #x << " " << x << endl int main() { int n, initial = 0, auxFD = 0, auxSD = 0; bool isMagic = true; cin >> n; int m[n][n]; for(int i = 0; i < n; ++i) { for(int j = 0; j < n; ++j) cin >> m[i][j]; } for(int i = 0; i < n; ++i) initial += m[0][i]; for(int i = 0; i < n && isMagic; ++i) { int auxR = 0, auxC = 0; for(int j = 0; j < n; ++j) { auxR += m[i][j]; auxC += m[j][i]; } isMagic &= (auxR == initial & auxC == initial); } for(int i = 0; i < n && isMagic; ++i) { auxFD += m[i][i]; auxSD += m[i][n - i - 1]; } isMagic &= (auxFD == initial & auxSD == initial); if(isMagic) cout << "Yes" << endl; else cout << "No" << endl; return 0; }