Submission #1358479

#TimeUsernameProblemLanguageResultExecution timeMemory
1358479jellybeanSouvenirs (IOI25_souvenirs)C++20
4 / 100
0 ms412 KiB
#include "souvenirs.h"
#include <bits/stdc++.h>
using namespace std;
#define int long long

void buy_souvenirs(signed n, long long p0) {
	int cur = p0-1; //less than p0
	bool f=0;
	for(int i=1; i<n; i++){	
		for(int j=0; j<i; j++){
			auto[v,res] = transaction(cur);
			
			if(v.size() == 2){
				f = 1;
				if(v[1] == v[0] + 1){ //531 or 421
					for(int k=1; k<i; k++) transaction(cur-1);
					for(int k=1; k<i+1; k++) transaction(1);
				} else {
					for(int k=1; k<i; k++) transaction(cur-1);
					for(int k=0; k<i+1; k++) transaction(cur-2);
					for(int k=1; k<i+2; k++) transaction(cur-3);
				}
				break;
			}
			p0 = cur-res;
		}
		if(f = 1) break;
		cur = p0-1;
	}
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...