QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#772558 | #9623. 合成大西瓜 | CodyLee# | WA | 1ms | 6484kb | C++17 | 792b | 2024-11-22 20:15:09 | 2024-11-22 20:15:10 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
vector<int> v[100010];
int a[100010], num[100010];
int main()
{
int n, m;
cin >> n >> m;
for(int i = 1; i <= n; i ++) {
cin >> a[i];
}
for(int i = 1; i <= m; i ++) {
int x, y;
cin >> x >> y;
v[x].emplace_back(y);
v[y].emplace_back(x);
num[x] ++;
num[y] ++;
}
int ans = 0;
for(int i = 1; i <= n; i ++) {
if(num[i] % 2 == 0) {
ans = max(ans, a[i]);
} else {
int j = v[i][0];
int mx1 = 0, mx2 = 0;
if(num[j] % 2 == 0)
for(auto x : v[j]) {
if(num[x] % 2 == 1) {
if(a[x] >= mx1) {
mx2 = mx1;
mx1 = a[x];
} else if(a[x] >= mx2) {
mx2 = a[x];
}
}
}
ans = max(ans, min(mx1, mx2));
}
}
cout << ans;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 6300kb
input:
7 9 1 4 1 3 3 6 7 5 4 3 6 3 4 2 3 5 2 2 6 6 7 5 1 4 6
output:
6
result:
ok single line: '6'
Test #2:
score: 0
Accepted
time: 0ms
memory: 6484kb
input:
5 7 1 5 3 1 4 3 5 1 3 5 1 1 4 5 4 2 4 3 2
output:
5
result:
ok single line: '5'
Test #3:
score: -100
Wrong Answer
time: 1ms
memory: 5980kb
input:
7 7 2 4 2 3 3 6 7 5 1 2 6 5 3 4 6 1 6 1 2 2 7
output:
3
result:
wrong answer 1st lines differ - expected: '6', found: '3'