Submission #200800

#TimeUsernameProblemLanguageResultExecution timeMemory
200800gs14004Koala Game (APIO17_koala)C++17
19 / 100
23 ms380 KiB
#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. } }
#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...