답안 #981279

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
981279 2024-05-13T03:46:35 Z pcc 코알라 (APIO17_koala) C++17
4 / 100
3 ms 344 KB
#include "koala.h"

#include <bits/stdc++.h>

using namespace std;
const int mxn = 110;

int ask[mxn],res[mxn];
int N,W;

void play(int* a,int* b){
	//cerr<<"ASK:"<<endl;for(int i = 0;i<N;i++)cerr<<a[i]<<' ';cerr<<endl;
	playRound(a,b);
	//cerr<<"RES:"<<endl;for(int i = 0;i<N;i++)cerr<<b[i]<<' ';cerr<<endl;
}

namespace S1{
	int GO(){
		memset(ask,0,sizeof(ask));
		ask[0] = 1;
		play(ask,res);
		 if(res[0] == 2){
			for(int i = 1;i<N;i++)if(!res[i])return i;
			assert(false);
		}
		else return 0;
		memset(ask,0,sizeof(ask));
		ask[1] = 1;
		play(ask,res);
		for(int i = 2;i<N;i++)if(!res[i])return i;
		assert(false);
		return -1;
	}
}

int minValue(int NN, int WW) {
    // TODO: Implement Subtask 1 solution here.
    // You may leave this function unmodified if you are not attempting this
    // subtask.
	N = NN,W = WW;
	return S1::GO();
}

namespace S2{
	int GO(){
		for(int i = 0;i<N;i++)ask[i] = 1;
		play(ask,res);
		for(int i = 0;i<3;i++){
			int cnt = 0;
			for(int i = 0;i<N;i++)if(res[i]==1)cnt++,res[i] = 0;
			while(cnt){
				for(int i = 0;i<N&&cnt;i++){
					if(res[i])res[i]++,cnt--;
				}
			}
			play(res,res);
		}
		for(int i = 0;i<N;i++)if(res[i]>1)return i;
		assert(false);
	}
}

int maxValue(int NN, int WW) {
    // TODO: Implement Subtask 2 solution here.
    // You may leave this function unmodified if you are not attempting this
    // subtask.
	N = NN,W = WW;
	return S2::GO();
}

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 3 ms 344 KB Output is correct
2 Correct 3 ms 344 KB Output is correct
3 Correct 3 ms 344 KB Output is correct
4 Correct 3 ms 344 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -