QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#752102 | #9573. Social Media | rool123 | AC ✓ | 429ms | 41056kb | C++23 | 1.8kb | 2024-11-15 22:00:00 | 2024-11-15 22:00:01 |
Judging History
answer
#include<bits/stdc++.h>
#define int long long
#define endl '\n'
#define vi vector<int>
#define vll vector<long long>
#define double long double
#define pb push_back
#define all(x) (x).begin(),(x).end()
#define debug(x) cout<<'*'<<x<<'\n';
#define yes cout<<"YES\n";
#define no cout<<"NO\n";
#define rep(x, y) for(int i=(x); i<=(y); i++)
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int,int> pii;
const int INF=0x3f3f3f3f;
const ll LINF=0x3f3f3f3f3f3f3f3f;
const int mod=1e9+7;
ll gcd(ll a,ll b)
{
return b?gcd(b,a%b):a;
}
ll lcm(ll a,ll b)
{
return a*b/gcd(a,b);
}
ll qmi(ll a,ll b)
{
ll ans=1;
while(b)
{
if(b&1)ans=ans*a%mod;
a=a*a%mod;
b>>=1;
}
return ans;
}
void solve()
{
map<int, bool>f;
map<pii, int>mp;
map<int, int>mpp;
int n, m, k;
cin >> n >> m >> k;
rep(1, n)
{
int x;
cin >> x;
f[x] = 1;
}
int res = 0;
rep(1, m)
{
int a, b;
cin >> a >> b;
if(f[a] && f[b])res ++;
else
{
if(a != b)mp[{min(a, b), max(a, b)}]++;
else mpp[a]++;
}
}
// debug(res);
priority_queue<pii>q;
for(auto [tt, y]:mp)
{
int aa = tt.first, bb = tt.second;
if(f[aa])mpp[bb] += y;
if(f[bb])mpp[aa] += y;
}
// rep(1, k)cout << i << ":" << mpp[i] << endl;
for(auto [x, y]:mpp)
{
q.push({y, x});
}
int t = 0, a = 0, b = 0;
if(q.size())t += q.top().first, a = q.top().second, q.pop();
if(q.size())t += q.top().first, b = q.top().second, q.pop();
t += mp[{min(a, b), max(a, b)}];
for(auto [tt, y]:mp)
{
int aa = tt.first, bb = tt.second;
if(f[aa] || f[bb])continue;
int u = mpp[aa] + mpp[bb] + y;
t = max(t, u);
}
cout << res + t << endl;
}
signed main()
{
ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);
int _;
_=1;
cin>>_;
while(_--)solve();
return 0;
}
这程序好像有点Bug,我给组数据试试?
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3500kb
input:
5 4 12 7 5 7 3 6 3 6 2 2 1 4 2 4 1 3 7 6 4 1 5 4 1 1 1 1 2 1 3 7 2 7 6 2 4 1 2 3 2 2 5 5 4 2 6 4 6 2 6 1 1 2 1 1 2 2 1 2 1 2 1 2 2 1 100 24 11 11 24
output:
9 5 1 1 1
result:
ok 5 number(s): "9 5 1 1 1"
Test #2:
score: 0
Accepted
time: 38ms
memory: 3668kb
input:
10000 19 12 20 8 12 1 5 11 7 17 13 19 6 3 9 10 15 14 20 4 18 16 4 11 7 1 8 4 16 19 1 13 15 2 16 2 8 7 3 15 11 13 5 20 18 14 17 14 20 2 9 1 12 8 11 10 17 18 16 3 15 5 14 20 13 7 15 10 3 2 5 16 7 8 6 1 6 4 18 16 1 8 4 1 20 6 6 9 4 15 7 5 14 9 1 3 18 9 15 18 17 15 11 14 7 19 7 3 1 2 5 6 4 7 5 1 4 5 3 1...
output:
12 14 1 19 6 5 1 11 19 4 3 10 4 1 4 19 15 2 18 4 17 5 1 2 5 17 3 2 6 15 6 3 6 4 4 7 3 7 4 1 16 15 2 3 6 12 12 7 6 8 8 6 8 11 16 1 4 9 8 14 2 6 19 19 16 8 20 14 8 12 7 9 6 8 2 17 9 5 5 3 6 6 20 8 13 11 10 5 3 6 3 1 8 5 8 11 7 14 10 9 9 11 7 9 5 2 8 14 10 5 3 5 5 10 1 6 9 16 5 3 19 1 4 8 8 10 4 2 1 15...
result:
ok 10000 numbers
Test #3:
score: 0
Accepted
time: 48ms
memory: 3860kb
input:
1000 59 96 80 10 66 50 63 15 2 28 41 21 58 45 42 14 79 32 33 37 52 1 74 57 27 72 77 8 49 40 78 31 12 70 62 73 26 69 24 3 65 67 23 6 47 17 38 54 80 5 64 13 51 44 71 39 34 75 19 55 30 68 61 14 14 26 7 28 53 3 51 79 68 24 50 1 39 45 74 18 13 12 5 68 41 1 32 30 69 13 61 59 26 68 17 56 74 14 22 25 71 41 ...
output:
60 83 4 5 2 90 23 125 72 7 49 81 25 9 40 22 78 51 7 47 77 19 49 73 134 114 104 121 180 3 2 4 92 86 146 9 20 2 74 3 78 32 19 63 5 79 17 16 54 131 83 23 45 153 33 137 67 98 8 21 6 53 12 89 14 97 9 142 25 100 108 87 56 15 43 153 2 165 41 132 116 160 118 167 63 6 16 8 3 67 4 91 4 34 8 83 32 34 119 63 17...
result:
ok 1000 numbers
Test #4:
score: 0
Accepted
time: 61ms
memory: 3928kb
input:
100 37 237 517 339 497 190 114 508 454 321 58 102 392 289 207 291 459 16 320 55 378 269 63 407 244 397 101 357 328 412 62 70 468 457 21 253 453 509 169 400 202 476 217 222 418 58 440 109 90 110 266 197 159 398 412 317 259 239 500 34 178 508 329 162 192 409 467 144 223 300 2 289 96 366 191 427 142 12...
output:
6 4 11 6 6 7 11 11 2 3 14 2 4 2 3 2 2 5 7 3 3 5 3 13 8 7 17 6 2 8 3 9 3 10 2 3 3 2 2 2 5 12 2 5 5 959 369 56 1045 15 67 394 757 82 1008 56 2 1317 1590 217 37 345 32 515 103 326 1628 1450 293 12 397 358 403 420 220 150 392 588 3 978 1296 97 49 1377 7 1764 627 1652 188 65 11 12 2 2 1 5 1 2 2 2
result:
ok 100 numbers
Test #5:
score: 0
Accepted
time: 413ms
memory: 37700kb
input:
1 100 200000 200000 9411 13081 102149 19907 193611 24114 159730 105867 96529 35050 21890 102981 87777 182418 96659 118374 76106 107614 179526 45826 56158 33510 42240 53971 75573 98727 113513 35449 165290 167552 180720 151348 194140 132021 197828 138348 52399 151728 27676 75498 122825 15163 89905 262...
output:
2
result:
ok 1 number(s): "2"
Test #6:
score: 0
Accepted
time: 419ms
memory: 37148kb
input:
1 10000 200000 200000 125539 129221 106895 82089 118673 102890 99009 89855 30685 139232 82330 30021 87868 184659 66982 166291 148020 179364 42952 142770 119906 181288 92853 152547 189430 17447 7734 93014 55411 67422 67242 28915 103728 75454 199937 132948 87129 181803 14914 8713 163118 33277 88390 16...
output:
527
result:
ok 1 number(s): "527"
Test #7:
score: 0
Accepted
time: 376ms
memory: 30428kb
input:
1 100000 200000 200000 176259 110770 87448 103054 67926 181667 95184 41139 164840 76118 118577 22469 96470 178388 28793 14208 195743 59626 40970 7011 7847 104874 362 194226 168695 127655 101955 109363 169723 134588 10660 147697 13315 51590 34750 103356 121858 179173 2151 198823 146514 51392 54171 15...
output:
50020
result:
ok 1 number(s): "50020"
Test #8:
score: 0
Accepted
time: 429ms
memory: 41052kb
input:
1 1 200000 200000 200000 2 1 3 2 4 1 5 4 6 3 7 4 8 2 9 7 10 3 11 7 12 1 13 8 14 1 15 4 16 5 17 13 18 6 19 11 20 19 21 8 22 6 23 20 24 8 25 17 26 2 27 26 28 6 29 28 30 4 31 7 32 24 33 16 34 5 35 32 36 11 37 29 38 7 39 6 40 27 41 6 42 18 43 20 44 22 45 3 46 26 47 9 48 16 49 1 50 1 51 34 52 33 53 45 54...
output:
1
result:
ok 1 number(s): "1"
Test #9:
score: 0
Accepted
time: 169ms
memory: 41056kb
input:
1 1 200000 200000 200000 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 10 1 11 1 12 1 13 1 14 1 15 1 16 1 17 1 18 1 19 1 20 1 21 1 22 1 23 1 24 1 25 1 26 1 27 1 28 1 29 1 30 1 31 1 32 1 33 1 34 1 35 1 36 1 37 1 38 1 39 1 40 1 41 1 42 1 43 1 44 1 45 1 46 1 47 1 48 1 49 1 50 1 51 1 52 1 53 1 54 1 55 1 56 1 57 1 5...
output:
1
result:
ok 1 number(s): "1"
Extra Test:
score: 0
Extra Test Passed