| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1320582 | eri16 | Koala Game (APIO17_koala) | C++20 | 0 ms | 0 KiB |
#include "koala.h"
#include <bits/stdc++.h>
using namespace std;
int minValue(int n, int w){
int* b=new int[n];
int* r=new int[n];
for(int i=0; i<n; i++){b[i]=0;}
b[0]=1;
playRound(b,r);
for (int i=1; i<n; i++){
if (r[i]==0){
return i;
}
}
return 0;
}
int maxValue(int n, int w){
vector <int> v(n,1);
int* b=new int[n];
int* r=new int[n];
for(int i=0; i<n; i++){b[i]=1;}
playRound(b,r);// 51-100
for (int i=0; i<n; i++){if (r[i]<2){v[i]=0;}}
for (int i=0; i<n; i++){b[i]=0;}
for (int i=0; i<n; i++){if (v[i]){b[i]=2;}}
playRound(b,r);//76-100
for (int i=0; i<n; i++){if (r[i]<3){v[i]=0;}}
for (int i=0; i<n; i++){b[i]=0;}
for (int i=0; i<n; i++){if (v[i]){b[i]=4;}}
playRound(b,r);//92-100
for (int i=0; i<n; i++){if (r[i]<5){v[i]=0;}}
for (int i=0; i<n; i++){b[i]=0;}
for (int i=0; i<n; i++){if (v[i]){b[i]=11;}}
playRound(b,r);//100
for (int i=0; i<n; i++){if (r[i]<12){v[i]=0;}}
for (int i=0; i<n; i++){if (v[i]){return i;}}
}
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;
}
bool compare(int num1, int num2){
int* b=new int[100];
int* r=new int[100];
for(int i=0; i<n; i++){b[i]=0;}
b[num1]=b[num2]=100;
playRound(b,r);
delete[] b;
delete[] r;
return r[num1] < r[num2];
}
void allValues(int N, int W, int *P) {
if (W == 2*N) {
vector <int> v(N);
for (int i=0; i<N; i++){v[i]=i;}
sort(v.begin(),v.end(),compare);
for (int i=0; i<N; i++){P[v[i]]=i+1;}
} else {
// TODO: Implement Subtask 5 solution here.
// You may leave this block unmodified if you are not attempting this
// subtask.
}
}
