#include "koala.h"
#include <bits/stdc++.h>
#pragma GCC optimize("O3,unroll-loops")
#define pb push_back
#define F first
#define S second
#define ld long double
#define all(a) a.begin(),a.end()
#define pii pair <int,int>
#define sz(v) (int)v.size()
#define rep(i , a , b) for(int i=a;i <= (b);i++)
#define per(i , a , b) for(int i=a;i >= (b);i--)
#define deb(x) cout <<#x << " : " << x << "\n" ;
using namespace std ;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
const int maxn = 5e5+10 , maxk = 1e4, sq = 1e5 , lg = 19, inf = 1e9+10 , mod = 31607;
int B[maxn] , R[maxn] ;
int minValue(int N, int W) {
int a[N] , b[N] ;
rep(i , 0 , N-2){
a[i] =0 ;
}
a[N-1] = 1;
playRound(a,b) ;
rep(i , 0 , N-2){
if(b[i] == 0)return i ;
}
return N-1 ;
}
int maxValue(int n, int w) {
vector <int> vec;
rep(i , 0 , n-1)vec.pb(i) ;
while(sz(vec)!=1){
int a[n] , b[n] ;
int x =min(13 ,w/sz(vec)) ;
rep(i ,0 ,n-1)a[i] = 0;
rep(i , 0 , sz(vec)-1){
a[vec[i]] = x;
}
playRound(a,b) ;
vec.clear();
rep(i , 0 , n-1)if(a[i] > 0 && b[i] > a[i])vec.pb(i) ;
}
return vec[0];
}
int greaterValue(int n, int W){
int low=1,high=min(10,W/2);
while(low<=high){
int mid=(low+high)/2;
int a[n],b[n];
for(int i=0;i<n;i++) a[i]=0;
a[0]=a[1]=mid;
playRound(a,b);
if(b[0]>mid&&b[1]>mid) low=mid+1;
else if(b[0]<=mid&&b[1]<=mid) high=mid-1;
else return (b[0]>mid?0:1);
}
return 0;
}
int n ;
bool cmp1(int A ,int B){
int low=0,high=40;
while(low<=high){
int mid=(low+high)/2;
int a[n],b[n];
for(int i=0;i<n;i++) a[i]=1;
a[A]=a[B]=mid+1;
playRound(a,b);
if(b[A]>mid+1&&b[B]>mid+1) low=mid+1;
else if(b[A]<=mid+1&&b[B]<=mid+1) high=mid-1;
else return (b[B]>mid+1?1:0);
}
return 0 ;
}
void allValues(int N, int W, int *p) {
n = N ;
if (W == 2*N) {
vector <int> vec;
rep(i , 0 , n-1)vec.pb(i) ;
sort(all(vec) , cmp1);
rep(i , 0 ,n-1){
p[vec[i]]=i+1 ;
}
} else {
// TODO: Implement Subtask 5 solution here.
// You may leave this block unmodified if you are not attempting this
// subtask.
}
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
4 ms |
344 KB |
Output is correct |
2 |
Correct |
3 ms |
344 KB |
Output is correct |
3 |
Correct |
4 ms |
344 KB |
Output is correct |
4 |
Correct |
3 ms |
344 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
15 ms |
344 KB |
Output is correct |
2 |
Correct |
13 ms |
468 KB |
Output is correct |
3 |
Correct |
10 ms |
468 KB |
Output is correct |
4 |
Correct |
10 ms |
344 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
40 ms |
500 KB |
Output is correct |
2 |
Correct |
44 ms |
484 KB |
Output is correct |
3 |
Correct |
41 ms |
480 KB |
Output is correct |
4 |
Correct |
39 ms |
496 KB |
Output is correct |
5 |
Correct |
40 ms |
480 KB |
Output is correct |
6 |
Correct |
40 ms |
504 KB |
Output is correct |
7 |
Correct |
39 ms |
484 KB |
Output is correct |
8 |
Correct |
40 ms |
476 KB |
Output is correct |
9 |
Correct |
44 ms |
484 KB |
Output is correct |
10 |
Correct |
43 ms |
488 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
33 ms |
344 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
0 ms |
344 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |