Submission #115445

# Submission time Handle Problem Language Result Execution time Memory
115445 2019-06-07T13:42:12 Z 김세빈(#2863) Koala Game (APIO17_koala) C++14
37 / 100
67 ms 504 KB
#include <bits/stdc++.h>

#include "koala.h"

using namespace std;

int minValue(int n, int w)
{
	int B[111], R[111];
	int i;
	
	for(i=0; i<n; i++){
		B[i] = 1;
	}
	
	playRound(B, R);
	
	for(i=0; i<n; i++){
		if(R[i] == 2) break;
		B[i] = 0;
	}
	
	B[i] = 1;
	
	for(i++; i<n; i++){
		B[i] = 0;
	}
	
	playRound(B, R);
	
	for(i=0; i<n; i++){
		if(!R[i]) return i;
	}
	
    return 0;
}

int maxValue(int n, int w)
{
	int B[111], R[111];
	int i, s, k;
	
	for(i=0; i<n; i++){
		B[i] = 1;
	}
	
	for(k=1, s=n; s>1; ){
		for(i=0; i<n; i++){
			B[i] *= k;
		}
		
		playRound(B, R);
		
		for(i=0, s=0; i<n; i++){
			if(B[i] == k && R[i] > k){
				B[i] = 1; s ++;
			}
			else B[i] = 0;
		}
		
		k = n / s;
	}
	
	for(i=0; i<n; i++){
		if(B[i]) return i;
	}
	
	return 0;
}

int greaterValue(int n, int w)
{
	int B[111], R[111];
	int N[6] = {1, 2, 3, 4, 6, 10};
	int i, s, e, m;
	
	for(s=0, e=5; s<=e; ){
		m = s + e >> 1;
		
		for(i=0; i<n; i++){
			B[i] = 0;
		}
		
		B[0] = B[1] = N[m];
		
		playRound(B, R);
		
		if(R[0] && R[1]) s = m + 1;
		else if(!R[0] && !R[1]) e = m - 1;
		else return !R[0];
	}
	
	return 0;
}

void allValues(int n, int w, int *P)
{
	if(n + n == w){
		srand(time(0));
		
		int D[111], B[111], R[111];
		int i;
		
		for(i=0; i<n; i++){
			D[i] = i;
		}
		
		for(i=0; i<1000; i++){
			swap(D[rand() % n], D[rand() % n]);
		}
		
		sort(D, D + n, [&](int &a, int &b){
			for(i=0; i<n; i++){
				B[i] = 0;
			}
			
			B[a] = B[b] = n;
			
			playRound(B, R);
			
			return !R[a];
		});
		
		for(i=0; i<n; i++){
			P[D[i]] = i + 1;
		}
	}
	else{
	}
}

Compilation message

koala.cpp: In function 'int greaterValue(int, int)':
koala.cpp:78:9: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   m = s + e >> 1;
       ~~^~~
# Verdict Execution time Memory Grader output
1 Correct 9 ms 384 KB Output is correct
2 Correct 8 ms 384 KB Output is correct
3 Correct 10 ms 384 KB Output is correct
4 Correct 9 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 28 ms 384 KB Output is correct
2 Correct 14 ms 384 KB Output is correct
3 Correct 15 ms 424 KB Output is correct
4 Correct 14 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 65 ms 428 KB Output is correct
2 Correct 67 ms 384 KB Output is correct
3 Correct 63 ms 432 KB Output is correct
4 Correct 64 ms 356 KB Output is correct
5 Correct 64 ms 504 KB Output is correct
6 Correct 64 ms 392 KB Output is correct
7 Correct 63 ms 504 KB Output is correct
8 Correct 64 ms 504 KB Output is correct
9 Correct 63 ms 396 KB Output is correct
10 Correct 62 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 36 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2 ms 384 KB Output isn't correct
2 Halted 0 ms 0 KB -