제출 #733459

#제출 시각아이디문제언어결과실행 시간메모리
7334591ne코알라 (APIO17_koala)C++14
19 / 100
12 ms320 KiB
#include "koala.h" #include <bits/stdc++.h> using namespace std; 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. int posB[N],posR[N]; for (int i = 0;i<N - 1;++i){ posB[i] = 0; } posB[N - 1] = 1; playRound(posB,posR); if (posR[N - 1] == 2){ for (int j = 0;j<N;++j){ if (posR[j] == 0){ return j; } } } else{ for (int i = 0;i<N;++i){ posB[i] = 0; } posB[0] = 1; playRound(posB,posR); if (posR[0] == 2){ for (int j = 0;j<N;++j){ if (posR[j] == 0)return j; } } return 0; } return 0; } 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 posB[N],posR[N]; for (int i = 0;i<N;++i){ posB[i] = 1; } //51 ... 100 playRound(posB,posR); for (int i = 0;i<N;++i){ if (posR[i] == 2){ posB[i] = 2; } else{ posB[i] = 0; } } //76...100 + 26....50 int nxposR[N]; playRound(posB,nxposR); //lets put 2 stones each at top50 positions //x stones will be got; uncontested //x + 3 * y <= 100 //x = 25 is optimal so 76...100 will be picked //75 - 25 //75 / 3 = 25 //now we know all quarter values //x + 5 * y <= 100 //100,75...20 for (int i = 0;i<N;++i){ if (posR[i] == 2 && nxposR[i] == 3){ posB[i] = 4; } else{ posB[i] = 0; } } int fposR[N]; //75..21 + 100 + 99 + 98 + 97 + 96 + 95 + 94 + 93 + 92 playRound(posB,fposR); int f2posR[N]; for (int i = 0;i<N;++i){ if (posR[i] == 2 && nxposR[i] == 3 && fposR[i] == 5){ posB[i] = 11; } else{ posB[i] = 0; } } playRound(posB,f2posR); for (int i = 0;i<N;++i){ if (f2posR[i] == 12){ return i; } } //100 92..11 return 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. } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...