ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#433 | #67. 「NOIP2015」神奇的幻方 | Pigsyy | 100 | 13ms | 2012kb | C++23 | 1.7kb | 2025-04-24 13:15:45 | 2025-04-24 13:15:46 |
answer
#include <stdio.h>
int main() {
int n, k, i, j, z = 1;
scanf("%d", &n);
int a[n][n];
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
a[i][j] = 0;
}
}
a[0][(n - 1) / 2] = 1;
int x, y;
x = 0;
y = (n - 1) / 2;
for (k = 2; k <= n * n; k++) {
z = 1;
for (i = 0; i < n && z != 0; i++) {
if (a[0][i] == (k - 1) && i != (n - 1)) {
a[n - 1][y + 1] = k;
x = n - 1;
y += 1;
z = 0;
break;
}
}
for (i = 0; i < n && z != 0; i++) {
if (a[i][(n - 1)] == (k - 1) && i != 0) {
a[(x - 1)][0] = k;
x -= 1;
y = 0;
z = 0;
break;
}
}
for (i = 0; i < n && z != 0; i++) {
if (a[0][(n - 1)] == (k - 1)) {
a[(x + 1)][y] = k;
x += 1;
z = 0;
break;
}
}
for (i = 0; i < n && z != 0; i++) {
if (a[0][i] != (k - 1) && a[i][n - 1] != (k - 1)) {
if (a[x - 1][y + 1] == 0) {
a[x - 1][y + 1] = k;
x -= 1;
y += 1;
z = 0;
break;
} else {
a[x + 1][y] = k;
x += 1;
z = 0;
break;
}
}
}
}
for (i = 0; i < n; i++) {
for (x = 0; x < n; x++) {
printf("%d ", a[i][x]);
}
printf("\n");
}
return 0;
}
详细
小提示:点击横条可展开更详细的信息
Test #1:
score: 10
Accepted
time: 1ms
memory: 1844kb
input:
3
output:
8 1 6 3 5 7 4 9 2
result:
ok 9 tokens
Test #2:
score: 10
Accepted
time: 1ms
memory: 1912kb
input:
1
output:
1
result:
ok "1"
Test #3:
score: 10
Accepted
time: 2ms
memory: 1840kb
input:
5
output:
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
result:
ok 25 tokens
Test #4:
score: 10
Accepted
time: 1ms
memory: 2012kb
input:
7
output:
30 39 48 1 10 19 28 38 47 7 9 18 27 29 46 6 8 17 26 35 37 5 14 16 25 34 36 45 13 15 24 33 42 44 ...
result:
ok 49 tokens
Test #5:
score: 10
Accepted
time: 2ms
memory: 1884kb
input:
19
output:
192 213 234 255 276 297 318 339 360 1 22 43 64 85 106 127 148 169 190 212 233 254 275 296 317 338 3...
result:
ok 361 tokens
Test #6:
score: 10
Accepted
time: 1ms
memory: 1752kb
input:
21
output:
233 256 279 302 325 348 371 394 417 440 1 24 47 70 93 116 139 162 185 208 231 255 278 301 324 347 3...
result:
ok 441 tokens
Test #7:
score: 10
Accepted
time: 2ms
memory: 1752kb
input:
31
output:
498 531 564 597 630 663 696 729 762 795 828 861 894 927 960 1 34 67 100 133 166 199 232 265 298 331 ...
result:
ok 961 tokens
Test #8:
score: 10
Accepted
time: 0ms
memory: 1776kb
input:
33
output:
563 598 633 668 703 738 773 808 843 878 913 948 983 1018 1053 1088 1 36 71 106 141 176 211 246 281 3...
result:
ok 1089 tokens
Test #9:
score: 10
Accepted
time: 2ms
memory: 2012kb
input:
37
output:
705 744 783 822 861 900 939 978 1017 1056 1095 1134 1173 1212 1251 1290 1329 1368 1 40 79 118 157 19...
result:
ok 1369 tokens
Test #10:
score: 10
Accepted
time: 1ms
memory: 1756kb
input:
39
output:
782 823 864 905 946 987 1028 1069 1110 1151 1192 1233 1274 1315 1356 1397 1438 1479 1520 1 42 83 124...
result:
ok 1521 tokens