Submission #1306953

#TimeUsernameProblemLanguageResultExecution timeMemory
1306953michael12Souvenirs (IOI25_souvenirs)C++20
22 / 100
1 ms400 KiB
#include "souvenirs.h"
#include<bits/stdc++.h>
#define ff first
#define ss second
#define pb push_back
#define mp make_pair
#define sm pair<vector<int>, long long>
using namespace std;
void sub3(int n, long long P0){
   sm T = transaction(P0 - 1);
   if(T.ff.size() == 1){
      long long p1 = P0 - 1 - T.ss;
      transaction(p1 - 1);
      transaction(p1 - 1);
   }
   else{
     long long sm2 = P0 - 1 - T.ss;
     transaction(sm2 / 2);
   }
}
void buy_souvenirs(int N, long long P0){
     long long p = P0;
     if(N == 2){
     transaction(p - 1);
     return;
     }
     else if(N == 3){
        sub3(N, P0);
        return;
     }
     else{
        for(int i = 1; i <= N - 1; i++){
            transaction(i * (N - i));
        }
        return;
     }

     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...