Submission #272415

#TimeUsernameProblemLanguageResultExecution timeMemory
272415eohomegrownappsRestore Array (RMI19_restore)C++14
100 / 100
386 ms760 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; int n,m; int INF = 1e9; void relaxedges(){ int a[20001], b[20001], c[20001]; for (int i = 0; i<m; i++){ int l,r,k,v; cin>>l>>r>>k>>v; r++; if (v==0){ a[i]=l; b[i]=r; c[i]=k-(r-l); } else { a[i]=r; b[i]=l; c[i]=(r-l)-k+1; } } for (int i = 0; i<n; i++){ a[m+2*i]=i; b[m+2*i]=i+1; c[m+2*i]=-1; a[m+2*i+1]=i+1; b[m+2*i+1]=i; c[m+2*i+1]=0; } m+=2*n; bool changed = true; bool works = true; int vals[20001]; vals[0]=0; for (int i = 1; i<=n; i++){ vals[i]=INF; } for (int i = 0; i<=n; i++){ bool changed = false; for (int i = 0; i<m; i++){ if (vals[b[i]]>vals[a[i]]-c[i]){ vals[b[i]]=vals[a[i]]-c[i]; changed=true; } } if (changed&&i==n){ works=false; } if (!changed){break;} } if (!works){ cout<<-1<<'\n'; return; } /*for (int i = 0; i<=n; i++){ cout<<vals[i]<<' '; }cout<<'\n';*/ for (int i = 0; i<n; i++){ cout<<vals[i+1]-vals[i]<<' '; }cout<<'\n'; } int main(){ cin.tie(0); ios_base::sync_with_stdio(0); cin>>n>>m; /*if (n<=18){ subtask1(); } else {*/ relaxedges(); //} }

Compilation message (stderr)

restore.cpp: In function 'void relaxedges()':
restore.cpp:33:10: warning: unused variable 'changed' [-Wunused-variable]
   33 |     bool changed = true;
      |          ^~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...