Submission #1252378

#TimeUsernameProblemLanguageResultExecution timeMemory
1252378anfiSouvenirs (IOI25_souvenirs)C++20
Compilation error
0 ms0 KiB
#include"souvenirs.h"
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define fi first
#define se second
const long long inf = 1e9;
int n,p[105],cn[105];
int hitung(int s, int k){
    s += k*(k-1)/2+k-1;
    return s/k;
}

void find(int p0){
    int ls = n;
    int money = p0-1;
    while(ls > 0){
        while(1){
            auto [v, rm] = transaction(money);
            int sum = money-rm;
            for(int i : v) cn[i]++;
            while(!v.empty() && v.back() >= ls){
                sum -= p[v.back()]; v.pop_back();
            }
            if(v.empty()){
                ls--; money = p0-1;
            }
            int i= v[0];
            if(v.size() == 1|| i+1 == ls){
                p[i] = sum;
                ls = i;
                money = p[i]-1; break;
            }
            int k = v.size();
            money = hitung(sum, k);
        }
    }
}

void buy_souvenirs(int N, long long p0){ 
    memset(cn, 0, sizeof(cn));
    memset(p, 0, sizeof(p));
    p[0] = p0, n = N;
    find(p0);
    for(int i = 1; i < N; i++){
        while(cn[i] < i){
            transaction(p[i]);
            cn[i]++;
        }
    }
}

Compilation message (stderr)

/usr/bin/ld: /tmp/cc7ObxJC.o: in function `main':
stub.cpp:(.text.startup+0x99): undefined reference to `buy_souvenirs(int, long long)'
collect2: error: ld returned 1 exit status