252642026-02-18 21:55:59999Múzeumi őrökcpp17Runtime error 32/4032ms32000 KiB
// Source: https://usaco.guide/general/io

#include <bits/stdc++.h>
using namespace std;
//#define int long long

signed main() {
    int n,e,u;cin>>n>>e>>u; //duhiti ont brusszel?
    u-=e;
    u++;
    vector<array<int,2>> dp(u+100,{(int)1e12,-1});
    vector<vector<array<int,3>>> v(u+100),sp(u+100);
    vector<int> lehete(u+2);
    vector<array<int,3>> ertekek(n);
    for(int i = 0;i<n;i++){
        int a,b,c;cin>>a>>b>>c;
        a-=e;
        b-=e;
        b++;
        a++;
        ertekek[i]={a,b,c};
        v[b].push_back({a,c,i+1});
        sp[a].push_back({b,c,i+1});
        lehete[a]++;
        lehete[b+1]--;
    }
    for(int i = 1;i<=u;i++){
        lehete[i]+=lehete[i-1];
        if(lehete[i]==0){
            cout<<-1;return 0;
        }
    }
    dp[0][0]=0;
    set<array<int,3>> s;
    for(int i = 1;i<=u;i++){
        for(auto[b,c,ind]:sp[i]){
            s.insert({dp[i-1][0]+c,b,ind});
        }
        if(s.empty()){
            cout<<-1;
            return 0;
        }
        auto it=s.begin();
        auto [cost,bb,index]=*it;
        dp[i][0]=cost;
        dp[i][1]=index;
        for(auto[a,c,ind]:v[i]){
            s.erase({dp[a-1][0]+c,i,ind});
        }
        /*cout<<i<<':'<<endl;
        for(auto[cost,b,ind]:s){
            cout<<ind<<' ';
        }
        cout<<endl;
        cout<<dp[i][0]<<' ';*/
    }//cout<<endl;
    if(dp[u][0]==(int)1e12||dp[u][1]==-1){
        cout<<-1;
        return 0;
    }
    cout<<dp[u][0]<<endl;
    vector<int> ans;
    int i = u;
    while(i!=0){
        ans.push_back(dp[i][1]);
        i=ertekek[dp[i][1]-1][0];
        i--;
    }cout<<ans.size()<<' ';
    sort(ans.begin(),ans.end());
    for(int i : ans)cout<<i<<' ';
}
SubtaskSumTestVerdictTimeMemory
base32/40
1Accepted0/01ms316 KiB
2Accepted0/019ms3380 KiB
3Accepted1/11ms316 KiB
4Accepted3/31ms316 KiB
5Accepted2/21ms316 KiB
6Accepted2/21ms388 KiB
7Accepted2/21ms316 KiB
8Accepted2/21ms316 KiB
9Accepted2/21ms316 KiB
10Runtime error0/226ms32000 KiB
11Runtime error0/232ms32000 KiB
12Accepted2/22ms316 KiB
13Accepted2/26ms820 KiB
14Accepted3/318ms3832 KiB
15Accepted3/318ms3996 KiB
16Runtime error0/230ms32000 KiB
17Runtime error0/225ms32000 KiB
18Accepted2/21ms500 KiB
19Accepted2/21ms508 KiB
20Accepted2/21ms316 KiB
21Accepted2/21ms316 KiB