Submission #305302

#TimeUsernameProblemLanguageResultExecution timeMemory
305302sofapudenKoala Game (APIO17_koala)C++14
37 / 100
148 ms536 KiB
#include "koala.h" #include <bits/stdc++.h> using namespace std; int arr1[100], arr2[100]; 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. memset(arr1,0,N); arr1[0] = 1; playRound(arr1, arr2); for(int i = 0; i < N; ++i){ if(!arr2[i])return i; } 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. vector<int> go(N); iota(go.begin(),go.end(),0); int sz = go.size(); while(sz != 1){ for(int i = 0; i < N; ++i){ arr1[i] = 0; arr2[i] = 0; } for(int i = 0; i < sz; ++i){ arr1[go[i]] = W/sz; } playRound(arr1,arr2); go.clear(); for(int i = 0; i < N; ++i){ if(arr2[i] > arr1[i] && arr1[i] > 0)go.push_back(i); } sz = go.size(); } return go[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. memset(arr1,0,N); arr1[0] = 4; arr1[1] = 4; playRound(arr1,arr2); if(arr2[0] <= 4 && arr2[1] <= 4){ arr1[0] = 2; arr1[1] = 2; playRound(arr1,arr2); if(arr2[0] <= 2 && arr2[1] <= 2){ arr1[0] = 1; arr1[1] = 1; playRound(arr1,arr2); return arr2[1] > arr2[0]; } if(arr2[0] > 2 && arr2[1] > 2){ arr1[0] = 3; arr1[1] = 3; playRound(arr1,arr2); return arr2[1] > arr2[0]; } return arr2[1] > arr2[0]; } if(arr2[0] > 4 && arr2[1] > 4){ arr1[0] = 8; arr1[1] = 8; playRound(arr1,arr2); if(arr2[0] <= 8 && arr2[1] <= 8){ arr1[0] = 6; arr1[1] = 6; playRound(arr1,arr2); return arr2[1] > arr2[0]; } return arr2[1] > arr2[0]; } return arr2[1] > arr2[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...