제출 #64600

#제출 시각아이디문제언어결과실행 시간메모리
64600nvmdava커다란 상품 (IOI17_prize)C++17
0 / 100
14 ms5304 KiB
#include "prize.h"
#include <bits/stdc++.h>
using namespace std;
 
 
vector<int> ans[210000];
int mx = -1;

int find_best(int n) {
	
	for(int i = 0; i < 500; i++){
		ans[i] = ask(i);
		if(ans[i][0] + ans[i][1] == 0){
			return i;
		}
		mx = max(mx, ans[i][0] + ans[i][1]);
	}
	int id = 0;
	while(id < n){	
		while(ans[id][0] + ans[id][1] != mx){
			id++;
			ans[id]  = ask(id);
			if(ans[id][0] + ans[id][1] == 0) return id;
		}
		int l = id, r = n - 1;
		int k = 0;
		while(l <= r)
		{
			int m = (l + r) >> 1;
			ans[m] = ask(m);
			if(ans[m][1] != ans[id][1] || ans[m][0] + ans[m][1] < mx) r = m - 1;
			else {
				l = m + 1;
				k = m;
			}
		}
		id = k + 1;
	}
}

컴파일 시 표준 에러 (stderr) 메시지

prize.cpp: In function 'int find_best(int)':
prize.cpp:39:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...