QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#777058 | #9623. 合成大西瓜 | RUOHUI | WA | 1ms | 3588kb | C++20 | 1.8kb | 2024-11-23 22:30:13 | 2024-11-23 22:30:14 |
Judging History
answer
#include "bits/stdc++.h"
#define int long long
using namespace std;
#define PII pair<int, int>
const int N = 2e6 + 10, M = 2e6 + 10, mod = 998244353, inf = 1e18;
double eps = 1e-9;
int n, m;
void solve()
{
cin >> n >> m;
vector<PII> a(n + 1);
vector<PII> Max(n + 1);
for (int i = 1; i <= n; i++)
cin >> a[i].first, a[i].second = i;
if (n == 1)
{
cout << a[1].first << endl;
return;
}
vector<vector<int>> adj(n + 1);
auto work = [&](int u, int val, int v)
{
if (val > Max[u].first)
Max[u].second = Max[u].first, Max[u].first = val;
else if (val > Max[u].second)
Max[u].second = val;
};
for (int i = 1; i <= m; i++)
{
int u, v;
cin >> u >> v;
adj[u].emplace_back(v), adj[v].emplace_back(u);
work(u, a[v].first, v), work(v, a[u].first, v);
}
sort(a.begin() + 1, a.end(), greater<PII>());
auto check = [&](int v, int val)
{
if (adj[v].size() >= 2)
return true;
int u = adj[v][0];
// cout << u << endl;
if (val == Max[u].first)
return Max[u].second >= val;
return Max[u].first >= val;
};
if (check(a[1].second, a[1].first))
{
cout << a[1].second << endl;
}
else
cout << a[2].second << endl;
// for (int i = 1; i <= n; i++)
// {
// if (check(a[i].second, a[i].first))
// {
// cout << a[i].first << endl;
// return;
// }
// }
}
signed main()
{
// freopen("in.txt", "r", stdin);
// freopen("out.txt", "w", stdout);
int T = 1;
// cin >> T;
while (T--)
solve();
// cout<<round(0.5);
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 3580kb
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: -100
Wrong Answer
time: 0ms
memory: 3588kb
input:
5 7 1 5 3 1 4 3 5 1 3 5 1 1 4 5 4 2 4 3 2
output:
2
result:
wrong answer 1st lines differ - expected: '5', found: '2'