Submission #1252741

#TimeUsernameProblemLanguageResultExecution timeMemory
1252741nickolasarapidisSouvenirs (IOI25_souvenirs)C++20
7 / 100
12 ms416 KiB
#include "souvenirs.h" #include <bits/stdc++.h> using namespace std; #define F first #define S second void buy_souvenirs(int N, long long P0){ pair<vector<int>, long long> a; vector<int> cnt(N, 0); if(N == 2){ a = transaction(P0 - 1); return; } for(int i = 1; i < N; i++){ //if(cnt[i] == i) continue; /*if(P0 == 3){ if(i == N - 1){ a = transaction(1); if(a.F.size() == 0){ for(int j = cnt[i]; j < i; j++){ a = transaction(2); } } else{ for(int j = cnt[i] + 1; j < i; j++){ a = transaction(1); } } } else{ for(int j = cnt[i]; j < i; j++){ a = transaction(2); } for(int j = cnt[i + 1]; j < i + 1; j++){ a = transaction(1); } } break; } if(P0 == 2){ for(int j = cnt[i]; j < i; j++){ a = transaction(1); } break; }*/ a = transaction(P0 - 1); cnt[i]++; if(a.S == 1) P0 -= 2; else{ if(a.F.size() == 1){ P0--; } else{ cnt[i + 1]++; P0 -= 2; } } for(int j = cnt[i]; j < i; j++){ a = transaction(P0); } } }
#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...