貪食蛇1
user_3763047219
c_cpp
2 years ago
1.1 kB
4
Indexable
int main() { int X[1000]={}; int Y[1000] = {}; int num; scanf("%d", &num); for (int i = 2;i < num+1; i++) { for (int j = 0;j < i+(i-1);j++) { if (i % 2 == 0) { if (j <= i - 2) { X[(1 + i - 1) * (i - 1) / 2 * 2 - (i - 1) + j] = j + 1; } else { X[(1 + i - 1) * (i - 1) / 2 * 2 - (i - 1) + j] = i; } } else { if (j < i) { X[(1 + i - 1) * (i - 1) / 2 * 2 - (i - 1) + j] = i; } else { X[(1 + i - 1) * (i - 1) / 2 * 2 - (i - 1) + j] = i - (j-(i-1)); } } } } for (int i = 2;i < num+1; i++) { for (int j = 0;j < i + (i - 1);j++) { if (i % 2 != 0) { if (j <= i - 2) { Y[(1 + i - 1) * (i - 1) / 2 * 2 - (i - 1) + j] = j + 1; } else { Y[(1 + i - 1) * (i - 1) / 2 * 2 - (i - 1) + j] = i; } } else { if (j < i) { Y[(1 + i - 1) * (i - 1) / 2 * 2 - (i - 1) + j] = i; } else { Y[(1 + i - 1) * (i - 1) / 2 * 2 - (i - 1) + j] = i - (j - (i - 1)); } } } } printf("%d\t%d\t", X[num-1], Y[num-1]); }
Editor is loading...