QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#748869#9580. 插排串联hanmxWA 26ms8016kbC++171.2kb2024-11-14 21:45:302024-11-14 21:45:30

Judging History

你现在查看的是最新测评结果

  • [2024-11-14 21:45:30]
  • 评测
  • 测评结果:WA
  • 用时:26ms
  • 内存:8016kb
  • [2024-11-14 21:45:30]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
using ll=long long;
using i64=long long;
using u64=unsigned long long;
int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int n;
    cin>>n;
    vector<vector<int>> g(n+1);
    vector<int> a(n+1);
    for(int i=1;i<=n;i++){
        int x;
        cin>>x;
        g[x].push_back(i);
        cin>>a[i];        
    }
    multiset<ll> s;
    auto dfs1=[&](auto dfs1,int x)->void{
        if(g[x].size()!=0) s.insert(a[x]);
        for(auto y:g[x]){
            dfs1(dfs1,y);
        }
    };
    dfs1(dfs1,0);
    int f=0;
    vector<ll> siz(n+1);
    auto dfs=[&](auto dfs,int x)->void{
        if(!g[x].size()){
            siz[x]=a[x];
            return;
        }
        for(auto y:g[x]){
            dfs(dfs,y);
            siz[x]+=siz[y];
        }
        //cout<<x<<" "<<siz[x]<<"\n";
        if(x==0){
            if(siz[x]>2200) f=1;
            return;
        }
        auto u=s.lower_bound(siz[x]);
        if(u==s.end()){
            f=1;
        }
        else s.erase(*u);
    };
    dfs(dfs,0);
    if(f) cout<<"NO"<<"\n";
    else cout<<"YES"<<"\n";
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

input:

5
0 500
1 700
1 400
2 100
2 200

output:

YES

result:

ok single line: 'YES'

Test #2:

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

input:

5
0 500
1 700
1 400
2 100
2 300

output:

NO

result:

ok single line: 'NO'

Test #3:

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

input:

4
0 1000
1 800
1 500
2 300

output:

YES

result:

ok single line: 'YES'

Test #4:

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

input:

3
0 1000000000
0 1000000000
0 147483647

output:

NO

result:

ok single line: 'NO'

Test #5:

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

input:

3
0 1000000000
0 1000000000
0 147483648

output:

NO

result:

ok single line: 'NO'

Test #6:

score: 0
Accepted
time: 26ms
memory: 8016kb

input:

64855
0 69748768
0 450926072
1 699448620
3 918617238
4 106189312
1 617660017
5 31691747
2 373080156
0 363984605
0 937885158
10 300431710
8 485372487
1 661592241
1 836709079
13 895424425
1 824052267
9 887752080
15 952380329
0 595041339
14 632034017
18 752444470
4 311747126
2 289503382
11 213029500
23...

output:

NO

result:

ok single line: 'NO'

Test #7:

score: -100
Wrong Answer
time: 15ms
memory: 6700kb

input:

48750
0 3785579
1 2060436
1 1095269
2 3527822
3 2748694
3 452943
5 427867
3 191538
8 2095981
1 3895276
10 3771233
3 3121067
10 416014
9 1443750
1 699351
8 933800
7 361157
16 423718
10 785063
11 2772134
16 3135666
2 1404821
15 417197
12 1560818
4 2709779
13 2489882
24 1070706
23 2364628
22 3451655
8 ...

output:

NO

result:

wrong answer 1st lines differ - expected: 'YES', found: 'NO'