Submission #958179

# Submission time Handle Problem Language Result Execution time Memory
958179 2024-04-05T05:32:16 Z salmon Koala Game (APIO17_koala) C++14
30 / 100
64 ms 724 KB
#include <bits/stdc++.h>
#include "koala.h"
using namespace std;
 
int minValue(int N, int W) {
    int res[N];
    int in[N];
 
    for(int i = 0; i < N; i++){
        in[i] = 0;
    }
    in[0] = 1;
 
    playRound(in,res);
 
    int p = -1;
    for(int i = 0; i < N; i++){
        if(res[i] <= in[i]){
            p = i;
        }
    }
 
    return p;
}
 
int maxValue(int N, int W) {
    set<int> sat;
    int res[N];
    int in[N];
 
    for(int i = 0; i < N; i++){
        sat.insert(i);
        in[i] = 0;
    }
 
    while(sat.size() != 1){
        int num = 100 / sat.size();
 
        for(int i = 0; i < N; i++){
            in[i] = 0;
        }
 
        for(int i : sat){
            in[i] = num;
        }
 
        playRound(in,res);
 
        for(int i = 0; i < N; i++){
            if(res[i] <= in[i] && sat.find(i) != sat.end()){
                sat.erase(i);
            }
        }
    }
 
 
 
    for(int i : sat) return i;
}
 
//9 5 3
int greaterValue(int N, int W) {
    int in[N];
    int res[N];
 
    int it = minValue(N, W);
 
    if(it == 0) return 1;
    if(it == 1) return 0;
 
    for(int i = 0; i < N; i++){
        in[i] = 0;
    }
 
    in[0] = 8;
    in[1] = 8;
 
    playRound(in,res);
 
    if(res[0] > in[0] && res[1] <= in[1]) return 0;
    if(res[1] > in[1] && res[0] <= in[0]) return 1;
 
    in[0] = 5;
    in[1] = 5;
 
    playRound(in,res);
 
    if(res[0] > in[0] && res[1] <= in[1]) return 0;
    if(res[1] > in[1] && res[0] <= in[0]) return 1;
 
    in[0] = 3;
    in[1] = 3;
 
    playRound(in,res);
 
    if(res[0] > in[0] && res[1] <= in[1]) return 0;
    if(res[1] > in[1] && res[0] <= in[0]) return 1;
 
    in[0] = 2;
    in[1] = 2;
 
    playRound(in,res);
 
    if(res[0] > in[0] && res[1] <= in[1]) return 0;
    if(res[1] > in[1] && res[0] <= in[0]) return 1;
}
 
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.
    }
}

Compilation message

koala.cpp: In function 'int maxValue(int, int)':
koala.cpp:27:14: warning: control reaches end of non-void function [-Wreturn-type]
   27 |     set<int> sat;
      |              ^~~
koala.cpp: In function 'int greaterValue(int, int)':
koala.cpp:106:1: warning: control reaches end of non-void function [-Wreturn-type]
  106 | }
      | ^
# Verdict Execution time Memory Grader output
1 Correct 3 ms 344 KB Output is correct
2 Correct 3 ms 344 KB Output is correct
3 Correct 3 ms 344 KB Output is correct
4 Correct 3 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 11 ms 344 KB Output is correct
2 Correct 11 ms 344 KB Output is correct
3 Correct 11 ms 344 KB Output is correct
4 Correct 11 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Partially correct 64 ms 460 KB Output is partially correct
2 Partially correct 59 ms 456 KB Output is partially correct
3 Partially correct 57 ms 724 KB Output is partially correct
4 Partially correct 64 ms 724 KB Output is partially correct
5 Partially correct 58 ms 484 KB Output is partially correct
6 Partially correct 59 ms 468 KB Output is partially correct
7 Partially correct 57 ms 476 KB Output is partially correct
8 Partially correct 57 ms 464 KB Output is partially correct
9 Partially correct 62 ms 704 KB Output is partially correct
10 Partially correct 59 ms 468 KB Output is partially correct
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 596 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -