Submission #1203233

#TimeUsernameProblemLanguageResultExecution timeMemory
1203233quocbaooCeste (COCI17_ceste)C++20
160 / 160
834 ms34236 KiB
#include<bits/stdc++.h> #define ll long long #define fi first #define se second using namespace std; ll dp[2004],kq[2004],vs[2004]; struct Node{ ll fi,se,ba; }; vector<Node> g[2004]; int main(){ if (fopen("nrsubsecv.in","r")){ freopen("nrsubsecv.in","r",stdin); freopen("nrsubsecv.out","w",stdout); } ios_base::sync_with_stdio(0); cin.tie(0);cout.tie(0); int n,m;cin>>n>>m; for (int i=1;i<=m;i++){ ll u,v,t,c;cin>>u>>v>>t>>c; g[u].push_back({v,t,c});g[v].push_back({u,t,c}); } multiset<tuple<ll,ll,int>> st; memset(dp,0x3f,sizeof(dp));memset(kq,0x3f,sizeof(kq)); st.insert({0,0,1});dp[1]=0; while (!st.empty()){ auto [time,cost,bd]=*st.begin();st.erase(st.begin()); if (cost>dp[bd]) continue; dp[bd]=cost; kq[bd]=min(kq[bd],1LL*time*cost); vs[bd]++;if (vs[bd]>2000) continue; for (auto j:g[bd]){ // if (cost+j.ba>4000000||) continue; st.insert({time+j.se,cost+j.ba,j.fi}); } } for (int i=2;i<=n;i++) { if (kq[i]>=1e15) cout<<"-1"<<endl;else cout<<kq[i]<<endl; } }

Compilation message (stderr)

ceste.cpp: In function 'int main()':
ceste.cpp:13:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   13 |         freopen("nrsubsecv.in","r",stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
ceste.cpp:14:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   14 |         freopen("nrsubsecv.out","w",stdout);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
#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...
#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...