제출 #1287963

#제출 시각아이디문제언어결과실행 시간메모리
1287963codz3r선물 (IOI25_souvenirs)C++20
22 / 100
4 ms336 KiB
#include "souvenirs.h"
#include <utility>
#include <vector>

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