Submission #1250706

#TimeUsernameProblemLanguageResultExecution timeMemory
1250706JelalTkmSouvenirs (IOI25_souvenirs)C++20
7 / 100
12 ms412 KiB
#include <bits/stdc++.h>
#pragma GCC optimize ("O3")
#pragma GCC target ("sse4")

using namespace std;

// #define int long long int

// const int N = 5e5 + 10;
// const int md = 1e9 + 7;
// const int INF = 1e18;

pair<vector<int>, long long> transaction(long long m);

void buy_souvenirs(int n, long long p0) {
    vector<long long> p(n);
    p[0] = p0;
    bool ok = 0;
    for (int i = 1; i < n; i++) {
        if (ok) {
            for (int j = 0; j < (i - 1); j++)
                transaction(1ll);
            break;
        }
        auto ans = transaction(p[i - 1] - 1ll);
        long long sm = p[i - 1] - 1ll;
        if ((int) ans.first.size() == 2) {
            ok = 1;
        }
        if ((int) ans.first.size() == 2 || ans.second == 1ll)
            sm--;
        for (int j = 0; j < (i - 1); j++) {
            transaction(sm);
        }
        p[i] = sm;
    }

    return;
}

// int32_t main(int32_t argc, char *argv[]) {
//     ios::sync_with_stdio(false);
//     cin.tie(nullptr);

//     int T = 1;
//     // cin >> T;
//     while (T--) {
        
//     }

//     return 0;
// }
#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...