답안 #732566

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
732566 2023-04-29T06:08:57 Z SanguineChameleon 코알라 (APIO17_koala) C++17
19 / 100
14 ms 464 KB
#include "koala.h"
#include <bits/stdc++.h>
using namespace std;

int B[120];
int R[120];

int minValue(int N, int W) {
	// TODO: Implement Subtask 1 solution here.
	// You may leave this function unmodified if you are not attempting this
	// subtask.
	B[0] = 1;
	for (int i = 1; i < N; i++) {
		B[i] = 0;
	}
	playRound(B, R);
	for (int i = 0; i < N; i++) {
		if (R[i] <= B[i]) {
			return i;
		}
	}
	return -1;
}

int maxValue(int N, int W) {
	// TODO: Implement Subtask 2 solution here.
	// You may leave this function unmodified if you are not attempting this
	// subtask.
	int cnt = N;
	for (int i = 0; i < N; i++) {
		B[i] = 1;
	}
	while (cnt > 1) {
		for (int i = 0; i < N; i++) {
			if (B[i] == 1) {
				B[i] = W / cnt;
			}
		}
		playRound(B, R);
		cnt = 0;
		for (int i = 0; i < N; i++) {
			B[i] = (B[i] > 0 && R[i] > B[i]);
			cnt += B[i];
		}
	}
	for (int i = 0; i < N; i++) {
		if (B[i] == 1) {
			return i;
		}
	}
	return -1;
}

int greaterValue(int N, int W) {
	// TODO: Implement Subtask 3 solution here.
	// You may leave this function unmodified if you are not attempting this
	// subtask.
	vector<int> vals = {2, 4, 8};
	for (auto x: vals) {
		B[0] = x;
		B[1] = x;
		for (int i = 2; i < N; i++) {
			B[i] = 0;
		}
		playRound(B, R);
		if (R[0] != R[1]) {
			assert(false);
			if (R[0] == 1) {
				return 0;
			}
			else {
				return 1;
			}
		}
	}
	return -1;
}

void allValues(int N, int W, int *P) {
	if (W == 2*N) {
		// TODO: Implement Subtask 4 solution here.
		// You may leave this block unmodified if you are not attempting this
		// subtask.
	} else {
		// TODO: Implement Subtask 5 solution here.
		// You may leave this block unmodified if you are not attempting this
		// subtask.
	}
}
# 결과 실행 시간 메모리 Grader output
1 Correct 3 ms 208 KB Output is correct
2 Correct 4 ms 316 KB Output is correct
3 Correct 4 ms 208 KB Output is correct
4 Correct 4 ms 208 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 12 ms 320 KB Output is correct
2 Correct 14 ms 208 KB Output is correct
3 Correct 12 ms 208 KB Output is correct
4 Correct 11 ms 208 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 464 KB Execution killed with signal 6
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 208 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 208 KB Output isn't correct
2 Halted 0 ms 0 KB -