Submission #896232

#TimeUsernameProblemLanguageResultExecution timeMemory
896232Muhammad_AneeqDungeons Game (IOI21_dungeons)C++17
11 / 100
7074 ms19760 KiB
#include <vector> #include <set> #include <map> #include "dungeons.h" using namespace std; int const N=4e5+10; int wi[N],lo[N],po[N],st[N]; int nn; set<int>sr; void init(int n, vector<int> s, vector<int> p, vector<int> w, vector<int> l) { nn=n; for (int i=0;i<n;i++) { wi[i]=w[i]; lo[i]=l[i]; st[i]=s[i]; po[i]=p[i]; sr.insert(s[i]); } } long long simulate(int i, int z) { if (sr.size()==1) { int f=*(begin(sr)); map<int,int>vis; long long ans=z; vector<int>temp; while (!vis[i]&&ans<f) { temp.push_back(i); ans+=po[i]; i=lo[i]; } if (ans<f) { long long y=ans; while (ans+y<f) ans+=y; int j=0; for (auto i:temp) { ans+=po[i]; j=i; if (ans>=f) break; } i=j; } while (i!=nn) { ans+=f; i=wi[i]; } return ans; } long long ans=z; while (i!=nn) { if (z>=st[i]) { z+=st[i]; i=wi[i]; } else { z+=po[i]; i=lo[i]; } } return z; }

Compilation message (stderr)

dungeons.cpp: In function 'long long int simulate(int, int)':
dungeons.cpp:58:12: warning: unused variable 'ans' [-Wunused-variable]
   58 |  long long ans=z;
      |            ^~~
#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...