Submission #1300863

#TimeUsernameProblemLanguageResultExecution timeMemory
1300863Jawad_Akbar_JJAutobus (COCI22_autobus)C++20
70 / 70
109 ms2008 KiB
#include <iostream> using namespace std; const int N = 75; int Mn[N][N], dp[N][N][N], n, m, K, q; int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); cin>>n>>m; for (int i=1;i<=n;i++){ for (int j=1;j<=n;j++){ Mn[i][j] = 1e9 * (i != j); for (int k=0;k<=n;k++) dp[i][j][k] = Mn[i][j]; } } for (int i=1;i<=m;i++){ int a, b, t; cin>>a>>b>>t; Mn[a][b] = min(Mn[a][b], t); } for (int k=1;k<=n;k++){ for (int l=1;l<=n;l++){ for (int i=1;i<=n;i++){ for (int j=1;j<=n;j++) dp[i][j][k] = min(dp[i][j][k], dp[i][l][k-1] + Mn[l][j]); } } } cin>>K>>q; K = min(n, K); for (int i=1;i<=q;i++){ int a, b; cin>>a>>b; if (dp[a][b][K] == 1e9) dp[a][b][K] = -1; cout<<dp[a][b][K]<<'\n'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...