Submission #1286318

#TimeUsernameProblemLanguageResultExecution timeMemory
1286318georgeckitoSouvenirs (IOI25_souvenirs)C++20
25 / 100
14 ms400 KiB
#include <bits/stdc++.h>
#include "souvenirs.h"
using namespace std;

void buy_souvenirs(int N, long long P0)
{
  if (N == 2)
  {
    std::pair<std::vector<int>, long long> res = transaction(P0 - 1);
  }
  else if (N == 3)
  {
    std::pair<std::vector<int>, long long> res = transaction(P0 - 1);
    if (res.first.size() == 1)
    {
      long long p1 = P0 - 1 - res.second; // a > b > c // b+c+x=a-1 => c = a-1-x-b
      std::pair<std::vector<int>, long long> res1 = transaction(p1 - 1);
      transaction(p1 - res1.second - 1);
    }
    else
    {
      long long x = P0 - 1 - res.second;
      transaction((x - 1) / 2);
    }
  }
  else
  {
    for (int i = 1; i < N; i++)
    {
      for (int j = 0; j < i; j++)
      {
        transaction(N - 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...