252532026-02-18 21:47:33999Múzeumi őrökcpp17Futási hiba 31/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+1,{(int)1e12,-1});
    vector<vector<array<int,3>>> v(u+1),sp(u+1);
    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});
    }
    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});
        }
        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){
        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<<' ';
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base31/40
1Elfogadva0/01ms316 KiB
2Elfogadva0/018ms3744 KiB
3Futási hiba0/11ms564 KiB
4Elfogadva3/31ms508 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva2/21ms316 KiB
8Elfogadva2/21ms596 KiB
9Elfogadva2/21ms316 KiB
10Futási hiba0/232ms32000 KiB
11Futási hiba0/232ms32000 KiB
12Elfogadva2/21ms316 KiB
13Elfogadva2/26ms1080 KiB
14Elfogadva3/317ms4384 KiB
15Elfogadva3/320ms4328 KiB
16Futási hiba0/232ms32000 KiB
17Futási hiba0/232ms32000 KiB
18Elfogadva2/21ms316 KiB
19Elfogadva2/21ms564 KiB
20Elfogadva2/21ms508 KiB
21Elfogadva2/21ms404 KiB