Submission #1273888

#TimeUsernameProblemLanguageResultExecution timeMemory
1273888lorenzoferrari선물 (IOI25_souvenirs)C++20
21 / 100
13 ms388 KiB
#include "souvenirs.h"
#include <utility>
#include <vector>
#include <cassert>
using namespace std;
using LL = long long;
#define F first
#define S second

void buy_souvenirs(int n, LL P0) {
	LL prev = P0;
	int cnt = 0;
	for (int i = 1; i < n; ++i) {
		auto [s, r] = transaction(prev - 1);
		LL cur = -1e9;
		if ((int)s.size() == 1) {
			cur = prev - 1 - r;
		} else {
			assert(r == 0);
			assert(s[1] == n - 1);
			cur = prev - 2;
			++cnt;
		}
		for (int j = 1; j < i - cnt * (i == n - 1); ++j) {
			auto _ = transaction(cur);
		}
		prev = cur;
	}
}
#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...