Submission #1250836

#TimeUsernameProblemLanguageResultExecution timeMemory
1250836lukameladzeSouvenirs (IOI25_souvenirs)C++20
21 / 100
11 ms412 KiB
#include "souvenirs.h"
#include <utility>
#include <vector>
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cassert>
#include <algorithm>
#include <string>
using namespace std;
#define pii pair <int, int>
#define sth pair<vector<int>, long long> 
void buy_souvenirs(int N, long long P0) {
    vector <long long> p(N);
    p[0] = P0;
    int cnt = 0;
    for (int i = 1; i < N; i++) {
        if (i == N - 1) {
            while (cnt < N - 1) {
                transaction(p[i - 1] - 1);
                cnt++;
            }
            continue;
        }
        long long x = p[i - 1] - 1;
        sth result = transaction(x);
        vector<int> souvenirs = result.first;
        long long remaining = result.second;
        if (souvenirs.size() == 1) {
            p[i] = p[i - 1] - 1 - remaining;
        } else {
            p[i] = (p[i - 1] - 2 - remaining);
            cnt++;
        }
        for (int j = 1; j < i; j++) {
            transaction(p[i]);
        }
    }
    return;
}
#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...