QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#797357#9812. Binary Searchucup-team004WA 59ms25296kbC++231.8kb2024-12-02 21:26:192024-12-02 21:26:21

Judging History

This is the latest submission verdict.

  • [2024-12-02 21:26:21]
  • Judged
  • Verdict: WA
  • Time: 59ms
  • Memory: 25296kb
  • [2024-12-02 21:26:19]
  • Submitted

answer

#include <bits/stdc++.h>

using i64 = long long;
using u64 = unsigned long long;
using u32 = unsigned;
using u128 = unsigned __int128;

constexpr int inf = 1E9;

int main() {
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    
    int n, m;
    std::cin >> n >> m;
    
    std::vector<int> a(n);
    for (int i = 0; i < n; i++) {
        std::cin >> a[i];
    }
    
    std::vector<std::vector<int>> adj(n);
    std::vector<std::array<int, 2>> deg(n);
    for (int i = 0; i < m; i++) {
        int u, v;
        std::cin >> u >> v;
        u--;
        v--;
        adj[u].push_back(v);
        adj[v].push_back(u);
        deg[u][a[v]]++;
        deg[v][a[u]]++;
    }
    
    std::vector<std::array<int, 2>> dp(n, {inf, inf});
    std::queue<std::array<int, 2>> q;
    
    for (int i = 0; i < n; i++) {
        for (int t = 0; t < 2; t++) {
            if (deg[i][t] == 0) {
                dp[i][t] = 1;
                q.push({i, t});
            }
        }
    }
    while (!q.empty()) {
        auto [x, t] = q.front();
        q.pop();
        
        for (auto y : adj[x]) {
            if (y == t) {
                continue;
            }
            if (--deg[y][a[x]] == 0) {
                dp[y][a[x]] = dp[x][t] + 1;
                q.push({y, a[x]});
            }
        }
    }
    
    int mx[2][2] {};
    for (int i = 0; i < n; i++) {
        for (int t = 0; t < 2; t++) {
            mx[a[i]][t] = std::max(mx[a[i]][t], dp[i][t]);
        }
    }
    
    int ans = inf;
    for (int x = 0; x < 2; x++) {
        for (int y = 0; y < 2; y++) {
            ans = std::min(ans, mx[x][y] + 1);
        }
    }
    if (ans == inf) {
        std::cout << "infinity\n";
        return 0;
    }
    
    std::cout << ans << "\n";
    
    return 0;
}

詳細信息

Test #1:

score: 100
Accepted
time: 0ms
memory: 3548kb

input:

4 4
0 0 1 1
1 2
1 3
2 3
3 4

output:

4

result:

ok single line: '4'

Test #2:

score: 0
Accepted
time: 0ms
memory: 3612kb

input:

6 7
0 0 1 1 0 1
1 2
3 1
1 4
2 3
4 2
3 4
5 6

output:

infinity

result:

ok single line: 'infinity'

Test #3:

score: 0
Accepted
time: 0ms
memory: 3552kb

input:

1 0
0

output:

1

result:

ok single line: '1'

Test #4:

score: 0
Accepted
time: 0ms
memory: 3772kb

input:

1 0
1

output:

1

result:

ok single line: '1'

Test #5:

score: 0
Accepted
time: 0ms
memory: 3552kb

input:

2 0
1 1

output:

1

result:

ok single line: '1'

Test #6:

score: 0
Accepted
time: 0ms
memory: 3848kb

input:

2 0
1 0

output:

2

result:

ok single line: '2'

Test #7:

score: 0
Accepted
time: 0ms
memory: 3552kb

input:

2 1
0 0
1 2

output:

1

result:

ok single line: '1'

Test #8:

score: 0
Accepted
time: 0ms
memory: 3544kb

input:

2 1
0 1
2 1

output:

2

result:

ok single line: '2'

Test #9:

score: 0
Accepted
time: 0ms
memory: 3772kb

input:

3 2
0 1 1
1 2
2 3

output:

2

result:

ok single line: '2'

Test #10:

score: 0
Accepted
time: 0ms
memory: 3560kb

input:

3 2
0 0 0
1 2
2 3

output:

1

result:

ok single line: '1'

Test #11:

score: 0
Accepted
time: 0ms
memory: 3544kb

input:

3 3
0 0 0
1 2
2 3
3 1

output:

1

result:

ok single line: '1'

Test #12:

score: 0
Accepted
time: 0ms
memory: 3844kb

input:

3 3
0 0 1
1 2
2 3
3 1

output:

2

result:

ok single line: '2'

Test #13:

score: 0
Accepted
time: 0ms
memory: 3548kb

input:

4 3
0 0 1 1
1 2
2 3
3 4

output:

4

result:

ok single line: '4'

Test #14:

score: 0
Accepted
time: 0ms
memory: 3832kb

input:

4 4
0 1 1 0
1 2
2 3
3 4
4 1

output:

infinity

result:

ok single line: 'infinity'

Test #15:

score: 0
Accepted
time: 0ms
memory: 3588kb

input:

4 4
0 1 0 1
1 2
2 3
3 4
4 1

output:

2

result:

ok single line: '2'

Test #16:

score: 0
Accepted
time: 0ms
memory: 3496kb

input:

3 1
0 0 1
1 2

output:

2

result:

ok single line: '2'

Test #17:

score: 0
Accepted
time: 0ms
memory: 3812kb

input:

3 1
1 0 1
1 3

output:

2

result:

ok single line: '2'

Test #18:

score: 0
Accepted
time: 0ms
memory: 3552kb

input:

3 1
0 1 1
1 2

output:

2

result:

ok single line: '2'

Test #19:

score: 0
Accepted
time: 0ms
memory: 3608kb

input:

4 2
0 0 1 1
1 2
3 4

output:

2

result:

ok single line: '2'

Test #20:

score: 0
Accepted
time: 0ms
memory: 3556kb

input:

6 3
0 0 1 1 0 1
1 2
3 4
5 6

output:

3

result:

ok single line: '3'

Test #21:

score: 0
Accepted
time: 0ms
memory: 3608kb

input:

6 6
0 0 1 1 1 0
1 2
2 3
3 1
4 5
5 6
6 4

output:

4

result:

ok single line: '4'

Test #22:

score: 0
Accepted
time: 0ms
memory: 3840kb

input:

6 6
0 0 0 1 1 1
1 2
2 3
3 1
4 5
5 6
6 4

output:

2

result:

ok single line: '2'

Test #23:

score: 0
Accepted
time: 1ms
memory: 3848kb

input:

3 2
1 0 0
1 2
3 2

output:

2

result:

ok single line: '2'

Test #24:

score: 0
Accepted
time: 0ms
memory: 3612kb

input:

7 10
1 0 1 1 0 0 0
2 4
4 5
5 6
7 2
5 3
3 2
1 3
6 2
7 5
3 7

output:

4

result:

ok single line: '4'

Test #25:

score: 0
Accepted
time: 0ms
memory: 3608kb

input:

4 6
0 1 1 1
2 3
3 4
1 4
2 4
3 1
1 2

output:

2

result:

ok single line: '2'

Test #26:

score: 0
Accepted
time: 0ms
memory: 3648kb

input:

3 1
0 1 1
1 3

output:

2

result:

ok single line: '2'

Test #27:

score: 0
Accepted
time: 0ms
memory: 3808kb

input:

7 18
0 0 0 0 1 1 0
4 2
7 1
2 3
7 2
6 5
4 1
5 7
6 3
6 1
6 7
4 7
5 1
5 3
4 5
3 7
4 6
2 1
2 5

output:

infinity

result:

ok single line: 'infinity'

Test #28:

score: 0
Accepted
time: 0ms
memory: 3608kb

input:

7 17
1 0 1 0 0 0 0
6 3
5 1
6 4
7 6
7 2
3 1
6 1
2 4
1 2
4 7
7 1
3 2
5 2
4 5
5 7
3 7
3 4

output:

infinity

result:

ok single line: 'infinity'

Test #29:

score: 0
Accepted
time: 0ms
memory: 3552kb

input:

5 9
1 1 0 0 0
2 3
5 3
3 4
4 2
1 2
5 1
5 4
1 4
5 2

output:

infinity

result:

ok single line: 'infinity'

Test #30:

score: 0
Accepted
time: 0ms
memory: 3544kb

input:

8 14
1 0 0 0 1 1 1 0
2 4
8 4
2 1
5 6
8 1
3 7
7 5
7 4
3 4
1 5
2 3
8 3
5 3
7 2

output:

infinity

result:

ok single line: 'infinity'

Test #31:

score: 0
Accepted
time: 0ms
memory: 3616kb

input:

10 17
1 0 1 1 0 0 1 1 1 1
4 9
7 5
9 3
1 5
3 6
1 9
10 2
3 5
8 4
6 10
6 8
9 8
9 6
2 7
5 10
3 4
1 3

output:

2

result:

ok single line: '2'

Test #32:

score: 0
Accepted
time: 1ms
memory: 3608kb

input:

8 17
0 0 1 0 1 0 0 1
1 4
7 8
8 5
1 7
1 2
8 4
6 1
5 6
8 2
6 4
5 3
5 4
6 7
1 5
2 3
6 8
7 2

output:

infinity

result:

ok single line: 'infinity'

Test #33:

score: 0
Accepted
time: 1ms
memory: 3612kb

input:

4 3
0 0 1 0
1 4
3 4
2 1

output:

2

result:

ok single line: '2'

Test #34:

score: 0
Accepted
time: 1ms
memory: 3548kb

input:

2 1
1 0
1 2

output:

2

result:

ok single line: '2'

Test #35:

score: 0
Accepted
time: 1ms
memory: 3836kb

input:

4 5
1 1 0 0
4 3
1 2
4 2
1 4
2 3

output:

infinity

result:

ok single line: 'infinity'

Test #36:

score: 0
Accepted
time: 1ms
memory: 3608kb

input:

7 20
0 1 0 1 1 1 0
7 5
2 7
2 1
1 4
5 3
2 3
4 5
1 7
6 4
4 3
6 7
2 6
3 1
7 3
4 2
7 4
3 6
1 6
5 6
5 1

output:

infinity

result:

ok single line: 'infinity'

Test #37:

score: 0
Accepted
time: 1ms
memory: 3552kb

input:

2 1
1 0
2 1

output:

2

result:

ok single line: '2'

Test #38:

score: 0
Accepted
time: 1ms
memory: 3624kb

input:

7 7
1 1 1 1 0 1 1
1 6
7 5
2 4
3 6
4 5
6 4
1 4

output:

2

result:

ok single line: '2'

Test #39:

score: 0
Accepted
time: 1ms
memory: 3768kb

input:

2 1
0 0
2 1

output:

1

result:

ok single line: '1'

Test #40:

score: 0
Accepted
time: 1ms
memory: 3492kb

input:

9 14
0 1 1 1 0 1 0 0 0
6 4
6 2
9 4
8 7
5 9
3 9
3 7
7 9
1 4
3 2
1 6
3 1
3 4
2 8

output:

infinity

result:

ok single line: 'infinity'

Test #41:

score: 0
Accepted
time: 1ms
memory: 3488kb

input:

9 3
0 1 1 1 1 1 1 1 0
1 7
1 8
9 8

output:

2

result:

ok single line: '2'

Test #42:

score: 0
Accepted
time: 1ms
memory: 3548kb

input:

5 9
1 1 1 1 1
3 4
1 5
3 2
2 5
3 5
2 4
1 3
1 2
4 1

output:

1

result:

ok single line: '1'

Test #43:

score: 0
Accepted
time: 3ms
memory: 9528kb

input:

95705 24453
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...

output:

2

result:

ok single line: '2'

Test #44:

score: 0
Accepted
time: 59ms
memory: 25296kb

input:

300000 299999
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 ...

output:

300000

result:

ok single line: '300000'

Test #45:

score: -100
Wrong Answer
time: 1ms
memory: 3756kb

input:

2048 1792
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 1 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 ...

output:

6

result:

wrong answer 1st lines differ - expected: '9', found: '6'