QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#801359#9730. Elevator IIProaesWA 54ms3896kbC++111.2kb2024-12-06 21:43:042024-12-06 21:43:04

Judging History

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

  • [2024-12-06 21:43:04]
  • 评测
  • 测评结果:WA
  • 用时:54ms
  • 内存:3896kb
  • [2024-12-06 21:43:04]
  • 提交

answer

#include<bits/stdc++.h>

using namespace std;

#define endl "\n"
#define ll long long
#define all(x) (x).begin() ,(x).end()

void solve(){
    ll n,f;cin>>n>>f;
    vector<pair<ll,ll>> vp(n);
    for(auto &[x,y] : vp) cin>>x>>y;
    priority_queue<pair<ll,ll>,vector<pair<ll,ll>>,greater<pair<ll,ll>>> pq;
    for(ll i = 0;i<n;i++){
        pq.push({vp[i].first , i});
    }
    ll pos = f;
    ll lj = 0;
    vector<ll> ans;
    while(pq.size()){
        auto [l , id] = pq.top();pq.pop();
        if(l >= pos){
            lj += vp[id].second - pos;
            pos = vp[id].second;
            ans.push_back(id);
        }else lj += vp[id].second - vp[id].first;
    }
    vector<ll> vis(n,0);
    for(ll x : ans) vis[x] = 1;
    vector<pair<ll,ll>> vp2;
    for(ll i =0;i<n;i+=1){
        if(vis[i]) continue;
        vp2.push_back({vp[i].second , i});
    }
    sort(all(vp2));reverse(all(vp2));
    for(auto [r,id]:vp2) ans.push_back(id);
    cout<<lj<<endl;
    for(ll x:ans) cout<<x+1<<" ";
    cout<<endl;
}

signed main(){
    cin.tie(0);cout.tie(0);
    ios::sync_with_stdio(0);
    ll t;cin>>t;while(t--)
        solve();
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

input:

2
4 2
3 6
1 3
2 7
5 6
2 5
2 4
6 8

output:

11
3 4 1 2 
5
2 1 

result:

ok ok 2 cases (2 test cases)

Test #2:

score: -100
Wrong Answer
time: 54ms
memory: 3896kb

input:

6100
19 52
51 98
2 83
40 58
96 99
39 55
72 94
15 17
4 15
48 99
2 99
77 78
35 77
44 62
79 81
30 31
1 48
48 76
68 99
60 66
6 19
44 53
64 92
17 28
67 98
9 99
40 65
16 27
99 100
15 56
4 6
24 97
84 96
47 49
37 38
77 79
13 40
13 92
71 100
47 93
90 91
72 81
15 48
32 71
19 17
95 99
10 23
18 100
90 93
52 92
...

output:

534
19 18 10 9 4 1 6 2 14 11 12 17 13 3 5 16 15 7 8 
217
6 4 5 2 1 3 
402
16 11 1 4 5 12 10 13 14 8 2 6 15 9 7 3 
743
7 17 1 3 10 8 6 4 5 16 13 11 15 12 18 14 9 19 2 
249
11 2 8 6 12 5 4 14 10 3 9 1 15 13 7 
449
12 11 18 1 6 10 2 7 13 9 4 20 14 5 15 19 8 16 3 17 
104
4 1 3 2 
193
1 8 3 4 2 6 7 5 9 1...

result:

wrong answer Participant's cost is 534, which is worse than jury's cost 524 (test case 1)