QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#797357 | #9812. Binary Search | ucup-team004 | WA | 59ms | 25296kb | C++23 | 1.8kb | 2024-12-02 21:26:19 | 2024-12-02 21:26:21 |
Judging History
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'