w • 1个月前
using namespace std; int A[1005][1005]; int n, m, p, x, y, k = 0;
void outer() {
cout << endl;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++) {
cout << A[i][j] << " ";
}
cout << endl;
}
}
int s(int a, int b) {
if (k >= n * m)
return a, b;
if (a == 0) {
a = n;
}
if (b == 0) {
b = m;
}
if (a > n) {
a = 1;
}
if (b > m) {
b = 1;
}
if (A[a][b] == 0) {
A[a][b] = k + 1;
}
if (A[a - 1][b + 1] != 0 ) {
k++;
if (a - 1 == 0) {
a = n;
}
if (b + 1 == 0) {
b = m;
}
if (a - 1 > n) {
a = 1;
}
if (b + 1 > m) {
b = 1;
}
if (A[a - 1][b + 1] != 0) {
s(a + 1, b);
}
} else {
k++;
s(a - 1, b + 1);
}
return a, b;
}
int main() {
//freopen("stage.in", "r", stdin);
//freopen("stage.out", "w", stdout);
cin >> n >> m >> p >> x >> y;
s(x, y);
for (int i = 1; i <= p; i++) {
int q, w;
cin >> q >> w;
cout << A[q][w] << endl;
}
}
评论:
请先登录,才能进行评论