#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 round[N];
round[0] = 1;
for(int i = 1;i<N;i++)round[i] = 0;
int ret[N];
playRound(round, ret);
bool isfirst = 1;
int zero = 0;
for(int i = 0;i<N;i++){
if(ret[i] == 2){
isfirst = 0;
}
if(ret[i] == 0)zero = i;
}
if(isfirst)return 0;
else return zero;
}
int maxValue(int N, int W) {
int poss = N;
vector<bool>can(N, true);
while(poss > 1){
int num = W/poss;
int quer[N];
for(int i = 0;i<N;i++){
if(can[i])quer[i] = num;
else quer[i] = 0;
}
int ret[N];
playRound(quer, ret);
for(int i = 0;i<N;i++){
if(ret[i] == 0 && can[i])can[i] = 0;
}
poss = 0;
for(int i = 0;i<N;i++){
if(can[i])poss++;
}
}
int ans = 0;
for(int i = 0;i<N;i++){
if(can[i])ans = i;
}
return ans;
}
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.
int quer[N];
quer[0] = 5;
quer[1] = 5;
for(int i = 2;i<N;i++)quer[i] = 0;
int ret[N];
playRound(quer, ret);
if(ret[0] == 0 && ret[1] != 0)return 1;
else if(ret[0] != 0 && ret[1] == 0)return 0;
else{
if(ret[0] == 0){
quer[0] = 2;
quer[1] = 2;
playRound(quer, ret);
if(ret[0] == 0 && ret[1] != 0)return 1;
else if(ret[0] != 0 && ret[1] == 0)return 0;
else{
if(ret[0] == 0){
quer[0] = 1;
quer[1] = 1;
playRound(quer, ret);
if(ret[0] == 0 && ret[1] != 0)return 1;
else return 0;
}
else{
quer[0] = 3;
quer[1] = 3;
playRound(quer, ret);
if(ret[0] == 0 && ret[1] != 0)return 1;
else return 0;
}
}
}
else{
quer[0] = 8;
quer[1] = 8;
playRound(quer, ret);
if(ret[0] == 0 && ret[1] != 0)return 1;
else return 0;
}
}
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 |
340 KB |
Output is correct |
2 |
Correct |
3 ms |
452 KB |
Output is correct |
3 |
Correct |
4 ms |
344 KB |
Output is correct |
4 |
Correct |
3 ms |
344 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
12 ms |
452 KB |
Output is correct |
2 |
Correct |
11 ms |
448 KB |
Output is correct |
3 |
Correct |
10 ms |
344 KB |
Output is correct |
4 |
Correct |
10 ms |
344 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
42 ms |
460 KB |
Output is correct |
2 |
Correct |
43 ms |
464 KB |
Output is correct |
3 |
Correct |
43 ms |
484 KB |
Output is correct |
4 |
Correct |
39 ms |
480 KB |
Output is correct |
5 |
Correct |
42 ms |
480 KB |
Output is correct |
6 |
Correct |
46 ms |
344 KB |
Output is correct |
7 |
Correct |
41 ms |
484 KB |
Output is correct |
8 |
Correct |
43 ms |
500 KB |
Output is correct |
9 |
Correct |
43 ms |
460 KB |
Output is correct |
10 |
Correct |
38 ms |
480 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
1 ms |
344 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |