답안 #200800

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
200800 2020-02-08T07:31:14 Z gs14004 코알라 (APIO17_koala) C++17
19 / 100
23 ms 380 KB
#include "koala.h"
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 105;
int B[MAXN], R[MAXN];

int minValue(int N, int W) {
	B[0] = 1;
	playRound(B, R);
	if(count(R, R + N, 0) == 0) return 0;
	return find(R, R + N, 0) - R;
}

bool good[MAXN];

int maxValue(int N, int W) {
	fill(good, good + N, 1);
	for(int i=0; i<N; i++) B[i] = 1;
	playRound(B, R);
	for(int i=0; i<N; i++){
		if(R[i] > B[i]) good[i] = 1;
		else good[i] = 0;
	}
	for(int i=0; i<N; i++){
		if(good[i]) B[i] = 2;
		else B[i] = 0;
	}
	playRound(B, R);
	vector<int> up1, up2;
	for(int i=0; i<N; i++){
		if(!good[i]) continue;
		if(B[i] < R[i]) up1.push_back(i);
		else up2.push_back(i);
	}
	memset(B, 0, sizeof(B));
	for(auto &i : up1) B[i] = 3;
	for(auto &i : up2) B[i] = 1;
	playRound(B, R);
	memset(good, 0, sizeof(good));
	memset(B, 0, sizeof(B));
	for(auto &i : up1){
		if(3 < R[i]) B[i] = 16;
	}
	playRound(B, R);
	for(auto &i : up1){
		if(B[i] == 16 && R[i] > B[i]) return i;
	}
	assert(0);
}

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.
    return 0;
}

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 10 ms 248 KB Output is correct
2 Correct 10 ms 252 KB Output is correct
3 Correct 10 ms 248 KB Output is correct
4 Correct 10 ms 248 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 22 ms 248 KB Output is correct
2 Correct 23 ms 376 KB Output is correct
3 Correct 22 ms 380 KB Output is correct
4 Correct 21 ms 248 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 5 ms 376 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 4 ms 248 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 5 ms 248 KB Output isn't correct
2 Halted 0 ms 0 KB -