제출 #1284883

#제출 시각아이디문제언어결과실행 시간메모리
1284883gurkotSouvenirs (IOI25_souvenirs)C++20
25 / 100
13 ms400 KiB
#include "souvenirs.h"
#include <utility>
#include <vector>
#include <iostream>
using namespace std;

void buy_souvenirs(int N, long long P0) {
  pair<vector<int>, long long> res;
  long long curp;
 
  if (N==2) {
   transaction(P0-1); return;
  } else
  if (N==3) {
   res=transaction(P0-1);
   curp=(P0-1-res.second);
   if ((int)res.first.size()==2) {
    transaction(curp/2);
    return;  
   } else {
    transaction(curp-1); transaction(curp-1);
    return;
   }
  } else
  if (P0==N) {
   curp=P0-1;
   for (int i=1;i<=N-1;i++){
  	for (int j=1;j<=i;j++) transaction(curp);
  	curp--;  	 
   }//i
   return;
  } else {
   curp=P0-1;
   for (int i=1;i<=N-1;i++){
   	for (int j=1;j<=i;j++) res=transaction(curp);
   	
   	if (res.second==0LL) curp--;
   	                else curp=curp-2LL;
   }//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...