Submission #1257103

#TimeUsernameProblemLanguageResultExecution timeMemory
1257103LmaoLmaoToll (BOI17_toll)C++20
100 / 100
1740 ms7780 KiB
#include<bits/stdc++.h>
#define fi first
#define se second
#define int long long
using namespace std;

using ll = long long;
using ii = pair<ll, ll>;
using aa = array<int,5>;

const int N = 1e5+5;
const int INF = 1e9;
const int MOD = 1e9+7;

vector<ii> adj[N];
int dp[N];  

signed main()
{   
    ios_base::sync_with_stdio(false); 
    cin.tie(NULL);
    int k,n,m,q;
    cin >> k >> n >> m >> q;
    for(int i=1;i<=m;i++) {
        int u,v,w;
        cin >> u >> v >> w;
        adj[v].push_back({u,w});
    }
    for(int i=0;i<n;i++) {
        dp[i]=1e9;
    }
    while(q--) {
        int l,r;
        cin >> l >> r;
        dp[l]=0;
        for(int i=l;i<=r;i++) {
            for(ii v:adj[i]) {
                dp[i]=min(dp[i],dp[v.fi]+v.se);
            }
        }
        if(dp[r]==1e9) {
            cout << -1 << '\n';
        }
        else {  
            cout << dp[r] << '\n';
        }
        for(int i=l;i<=r;i++) dp[i]=1e9;

    }
    return 0; 
}
/*
██╗░░██╗██╗░░██╗░█████╗░███╗░░██╗░██████╗░              ░██████╗██╗██╗░░░██╗                ░█████╗░██╗░░░██╗████████╗███████╗
██║░██╔╝██║░░██║██╔══██╗████╗░██║██╔════╝░              ██╔════╝██║██║░░░██║                ██╔══██╗██║░░░██║╚══██╔══╝██╔════╝
█████═╝░███████║███████║██╔██╗██║██║░░██╗░              ╚█████╗░██║██║░░░██║                ██║░░╚═╝██║░░░██║░░░██║░░░█████╗░░
██╔═██╗░██╔══██║██╔══██║██║╚████║██║░░╚██╗              ░╚═══██╗██║██║░░░██║                ██║░░██╗██║░░░██║░░░██║░░░██╔══╝░░
██║░╚██╗██║░░██║██║░░██║██║░╚███║╚██████╔╝              ██████╔╝██║╚██████╔╝                ╚█████╔╝╚██████╔╝░░░██║░░░███████╗
╚═╝░░╚═╝╚═╝░░╚═╝╚═╝░░╚═╝╚═╝░░╚══╝░╚═════╝░              ╚═════╝░╚═╝░╚═════╝░                ░╚════╝░░╚═════╝░░░░╚═╝░░░╚══════╝
*/
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...