编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间
#101759 #1437. [L3-2] Ice World Wrong Answer 50 50 ms 2272 K C++ 17 / 3.0 K yyf_0404 2024-03-15 1:52:29
显示原始代码
#include <bits/stdc++.h>
#define inf 0x3f3f3f3f
using namespace std;
int n, a[4], b[4];
int dp[30][30][30][2][3][3];
int dfs(int xa, int ya, int xb, int yb, int za, int zb) {
    int t = (xa ^ ya ^ xb ^ yb) & 1, &cur = dp[xa + ya - 2][xa - 1][n - xb][t][za][zb];
    if (cur != inf)
        return cur;
    if (xa == n && ya == n && xb == 1 && yb == 1)
        return cur = 0;
    int tza, tzb, tx, ty;
    if (t == 0) {
        cur = -1;
        tza = za, tzb = zb, tx = xa + 1, ty = ya;
        if (tx <= n) {
            if (xa == a[0] && ya == a[1] && tx == a[2] && ty == a[3])
                tza = 0;
            if (xa == b[0] && ya == b[1] && tx == b[2] && ty == b[3])
                tzb = 0;
            if (tza != 2 && abs(xb - tx) + abs(yb - ty) == 1)
                cur = max(tza ? -1 : 1, cur);
            else if (tzb != 2 && (xb == tx || yb == ty))
                cur = max(tzb ? -1 : 1, cur);
            else
                cur = max(dfs(tx, ty, xb, yb, tza, tzb), cur);
        }
        tza = za, tzb = zb, tx = xa, ty = ya + 1;
        if (ty <= n) {
            if (xa == a[0] && ya == a[1] && tx == a[2] && ty == a[3])
                tza = 0;
            if (xa == b[0] && ya == b[1] && tx == b[2] && ty == b[3])
                tzb = 0;
            if (tza != 2 && abs(xb - tx) + abs(yb - ty) == 1)
                cur = max(tza ? -1 : 1, cur);
            else if (tzb != 2 && (xb == tx || yb == ty))
                cur = max(tzb ? -1 : 1, cur);
            else
                cur = max(dfs(tx, ty, xb, yb, tza, tzb), cur);
        }
    } else {
        cur = 1;
        tza = za, tzb = zb, tx = xb - 1, ty = yb;
        if (tx > 0) {
            if (xb == a[2] && yb == a[3] && tx == a[0] && ty == a[1])
                tza = 1;
            if (xb == b[2] && yb == b[3] && tx == b[0] && ty == b[1])
                tzb = 1;
            if (tza != 2 && abs(xa - tx) + abs(ya - ty) == 1)
                cur = min(tza ? -1 : 1, cur);
            else if (tzb != 2 && (xa == tx || ya == ty))
                cur = min(tzb ? -1 : 1, cur);
            else
                cur = min(dfs(xa, ya, tx, ty, tza, tzb), cur);
        }
        tza = za, tzb = zb, tx = xb, ty = yb - 1;
        if (ty > 0) {
            if (xb == a[2] && yb == a[3] && tx == a[0] && ty == a[1])
                tza = 1;
            if (xb == b[2] && yb == b[3] && tx == b[0] && ty == b[1])
                tzb = 1;
            if (tza != 2 && abs(xa - tx) + abs(ya - ty) == 1)
                cur = min(tza ? -1 : 1, cur);
            else if (tzb != 2 && (xa == tx || ya == ty))
                cur = min(tzb ? -1 : 1, cur);
            else
                cur = min(dfs(xa, ya, tx, ty, tza, tzb), cur);
        }
    }
    // printf("%d %d %d %d %d %d %d\n", xa, ya, xb, yb, za, zb, cur);
    return cur;
}
void solve() {
    cin >> n;
    for (int i = 0; i < 4; i++) cin >> a[i];
    if (a[0] > a[2])
        swap(a[0], a[2]);
    if (a[1] > a[3])
        swap(a[1], a[3]);
    for (int j = 0; j < 4; j++) cin >> b[j];
    if (b[0] > b[2])
        swap(b[0], b[2]);
    if (b[1] > b[3])
        swap(b[1], b[3]);
    memset(dp, 0x3f, sizeof(dp));
    int res = dfs(1, 1, n, n, 2, 2);
    printf(res == 1 ? "Alice\n" : (res == -1 ? "Bob\n" : "0\n"));
}
int main() {
    int T;
    cin >> T;
    while (T--) solve();
    return 0;
}
子任务 #1
Wrong Answer
得分:50
测试点 #1
Wrong Answer
得分:0
用时:4 ms
内存:2156 KiB

输入文件(1.in

20
2 2 1 2 2 1 1 1 2
2 1 1 2 1 1 1 1 2
2 2 1 2 2 2 1 2 2
2 1 2 2 2 2 1 2 2
2 1 1 1 2 1 1 1 2
2 1 1 2
<262 bytes omitted>

答案文件(1.out

Alice
Alice
Bob
Bob
Alice
Alice
Alice
Alice
Bob
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alic
<14 bytes omitted>

用户输出

Alice
Alice
Bob
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Alice

Special Judge 信息

Files user_out and answer differ

系统信息

Exited with return code 0
测试点 #2
Accepted
得分:100
用时:5 ms
内存:2200 KiB

输入文件(2.in

20
5 5 3 5 4 2 4 3 4
5 2 3 3 3 2 2 2 3
4 2 1 2 2 3 4 4 4
6 1 2 1 3 1 2 2 2
6 5 1 5 2 6 5 6 6
4 4 3 4
<262 bytes omitted>

答案文件(2.out

Bob
Alice
Bob
Alice
Bob
Bob
Alice
Bob
Alice
Alice
Bob
Alice
Bob
Bob
Alice
Alice
Bob
Bob
Alice
Alice

用户输出

Bob
Alice
Bob
Alice
Bob
Bob
Alice
Bob
Alice
Alice
Bob
Alice
Bob
Bob
Alice
Alice
Bob
Bob
Alice
Alice

系统信息

Exited with return code 0
测试点 #3
Accepted
得分:100
用时:5 ms
内存:2176 KiB

输入文件(3.in

20
3 1 3 2 3 1 2 1 3
6 6 2 6 3 5 4 5 5
4 4 2 4 3 1 2 2 2
3 1 3 2 3 2 2 3 2
3 2 2 3 2 1 3 2 3
5 4 1 5
<262 bytes omitted>

答案文件(3.out

Alice
Bob
Alice
0
Bob
Bob
Alice
Alice
Alice
Alice
Alice
Bob
Alice
Alice
0
Alice
Bob
Bob
Alice
Bob

用户输出

Alice
Bob
Alice
0
Bob
Bob
Alice
Alice
Alice
Alice
Alice
Bob
Alice
Alice
0
Alice
Bob
Bob
Alice
Bob

系统信息

Exited with return code 0
测试点 #4
Accepted
得分:100
用时:4 ms
内存:2176 KiB

输入文件(4.in

20
5 4 3 4 4 2 3 2 4
4 3 4 4 4 3 4 4 4
3 2 1 2 2 2 3 3 3
4 1 4 2 4 1 1 1 2
4 1 1 1 2 4 1 4 2
6 3 4 3
<262 bytes omitted>

答案文件(4.out

Alice
Bob
Bob
Alice
Alice
Alice
Bob
Bob
Alice
Alice
Bob
Bob
Alice
Alice
Bob
Alice
Alice
Alice
Bob
Bo
<2 bytes omitted>

用户输出

Alice
Bob
Bob
Alice
Alice
Alice
Bob
Bob
Alice
Alice
Bob
Bob
Alice
Alice
Bob
Alice
Alice
Alice
Bob
Bob

系统信息

Exited with return code 0
测试点 #5
Wrong Answer
得分:0
用时:5 ms
内存:2228 KiB

输入文件(5.in

20
3 2 2 3 2 1 1 1 2
6 5 5 5 6 1 5 2 5
3 2 3 3 3 2 1 3 1
5 1 3 1 4 2 3 2 4
5 2 3 3 3 2 5 3 5
4 1 2 1
<262 bytes omitted>

答案文件(5.out

Alice
Bob
Bob
Alice
Bob
Alice
Alice
Bob
Bob
Alice
Bob
Alice
Alice
Bob
Bob
0
Alice
Alice
Bob
Alice

用户输出

Alice
Bob
Bob
Alice
Bob
Alice
Alice
Bob
Bob
Alice
Bob
Alice
Alice
Bob
Bob
Alice
Alice
Alice
Bob
Alice

Special Judge 信息

Files user_out and answer differ

系统信息

Exited with return code 0
测试点 #6
Accepted
得分:100
用时:8 ms
内存:2176 KiB

输入文件(6.in

20
9 4 2 4 3 4 7 5 7
9 3 7 4 7 4 4 5 4
10 2 9 3 9 9 8 10 8
9 4 1 5 1 7 7 7 8
9 8 7 9 7 4 1 5 1
10 7 
<276 bytes omitted>

答案文件(6.out

Bob
Alice
Bob
Bob
Alice
Bob
Alice
Bob
Alice
Alice
Alice
Bob
Bob
Bob
0
0
Alice
Alice
Alice
Bob

用户输出

Bob
Alice
Bob
Bob
Alice
Bob
Alice
Bob
Alice
Alice
Alice
Bob
Bob
Bob
0
0
Alice
Alice
Alice
Bob

系统信息

Exited with return code 0
测试点 #7
Accepted
得分:100
用时:6 ms
内存:2124 KiB

输入文件(7.in

20
10 4 2 5 2 8 1 8 2
9 9 3 9 4 6 3 7 3
10 4 6 5 6 3 4 3 5
9 7 9 8 9 1 6 2 6
9 7 7 7 8 6 8 7 8
9 4 3
<274 bytes omitted>

答案文件(7.out

Alice
Bob
Alice
0
Bob
Bob
Bob
Alice
Alice
Alice
Bob
Bob
Bob
Alice
Alice
Alice
Bob
Alice
Alice
Alice

用户输出

Alice
Bob
Alice
0
Bob
Bob
Bob
Alice
Alice
Alice
Bob
Bob
Bob
Alice
Alice
Alice
Bob
Alice
Alice
Alice

系统信息

Exited with return code 0
测试点 #8
Runtime Error
得分:0
用时:4 ms
内存:2236 KiB

输入文件(8.in

20
12 11 6 11 7 4 7 5 7
10 3 7 4 7 7 1 8 1
18 9 16 10 16 12 10 12 11
22 12 13 13 13 4 9 5 9
5 4 2 4 
<344 bytes omitted>

答案文件(8.out

Alice
Alice
Bob
Alice
Bob
Alice
Bob
Bob
Bob
Bob
Alice
Alice
Alice
Bob
Bob
Alice
Bob
Alice
Bob
Alice

用户输出

Alice
Alice

系统信息

Killed: Segmentation fault
测试点 #9
Runtime Error
得分:0
用时:5 ms
内存:2236 KiB

输入文件(9.in

20
5 3 2 4 2 4 2 4 3
6 5 3 5 4 3 2 4 2
5 4 5 5 5 4 1 5 1
8 5 6 5 7 7 5 7 6
21 3 4 3 5 18 21 19 21
15
<339 bytes omitted>

答案文件(9.out

Alice
0
Bob
Bob
Bob
Alice
Bob
Bob
Alice
Alice
Alice
Alice
Alice
Bob
Bob
Bob
Bob
Bob
Alice
Alice

用户输出

Alice
0
Bob
Bob

系统信息

Killed: Segmentation fault
测试点 #10
Runtime Error
得分:0
用时:4 ms
内存:2272 KiB

输入文件(10.in

20
30 16 8 16 9 9 24 9 25
30 6 6 7 6 15 23 16 23
30 28 23 28 24 8 12 9 12
30 22 24 23 24 28 28 29 28
<399 bytes omitted>

答案文件(10.out

Bob
Bob
0
Bob
Alice
Bob
Bob
Alice
Bob
Bob
Bob
Alice
Alice
Bob
Alice
Bob
Bob
Alice
Alice
Bob

系统信息

Killed: Segmentation fault