Submission #1055051

#TimeUsernameProblemLanguageResultExecution timeMemory
1055051ican0534산악 구조대 (JOI13_mountain)C++14
20 / 100
3 ms952 KiB


#include "grader.h"

int X;
int measure(int r, int c) {
	int ret = Measure(r, c);
	if(ret == X) Pinpoint(r, c);
	return ret;
}

void Rescue(int R, int C, int RS, int CS, int x) {
	X = x;
	for(int r=1; r<=R; r++) {
		int h = measure(r, CS);
		if(h < X) continue;
		int lo = CS, hi = C+1;
		while(hi - lo > 1) {
			int mid = (lo + hi) / 2;
			if(measure(r, mid) > X) lo = mid;
			else hi = mid;
		}
		lo = 0, hi = CS;
		while(hi - lo > 1) {
			int mid = (lo + hi) / 2;
			if(measure(r, mid) > X) hi = mid;
			else lo = mid;
		}
	}
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...