Submission #403156

#TimeUsernameProblemLanguageResultExecution timeMemory
403156A_DKoala Game (APIO17_koala)C++14
37 / 100
60 ms552 KiB
#include "koala.h" #include <bits/stdc++.h> using namespace std; int a[100]; int minValue(int N, int W) { int ans=0; int B[N]; int R[N]; memset(B,0,sizeof(B)); memset(R,0,sizeof(R)); B[0]=1; playRound(B,R); for(int i=1;i<N;i++)if(R[i]==0)ans=i; return ans; } int maxValue(int N, int W) { int l=1,r=13,ans; int B[N]; int R[N]; bool me[N]; int cnt=1; memset(B,0,sizeof(B)); memset(me,1,sizeof(me)); while(1){ memset(B,0,sizeof(B)); for(int i=0;i<N;i++){ if(me[i]){ B[i]=cnt; } } playRound(B, R); int u=0; for(int i=0;i<N;i++){ if(me[i]&&R[i]>cnt){ u++; me[i]=1; } else me[i]=0; } cnt=W/u; cnt=min(cnt,13); if(u==1){ for(int i=0;i<N;i++){ if(me[i])return i; } } } } int greaterValue(int N, int W) { int l=1,r=13,ans; int B[N]; int R[N]; memset(B,0,sizeof(B)); while(l<=r){ int mid=(l+r)/2; B[0]=mid; B[1]=mid; playRound(B, R); int a=R[0]>mid; int b=R[1]>mid; if(a>b)return 0; if(b>a)return 1; if(a){ l=mid+1; } else r=mid-1; } assert(0); } bool com(int a,int b) { int l=1,r=13,ans; int B[100]; int R[100]; memset(B,0,sizeof(B)); while(l<=r){ int mid=(l+r)/2; B[a]=mid; B[b]=mid; playRound(B, R); int a=R[0]>mid; int b=R[1]>mid; if(a>b)return 0; if(b>a)return 1; if(a){ l=mid+1; } else r=mid-1; } assert(0); } void allValues(int N, int W, int *P) { if (W == 2*N) { } else { vector<int> vec[N*3]; int ann=0; int B[N]; int R[N]; memset(B,0,sizeof(B)); memset(R,0,sizeof(R)); B[0]=100; playRound(B,R); for(int i=1;i<N;i++)if(R[i]==0)ann=i; vec[1].push_back(ann); for(int i=0;i<N;i++){ if(i==ann)continue; int l=2,r=13,ans; while(l<=r){ memset(B,0,sizeof(B)); int mid=(l+r)/2; B[i]=mid; playRound(B,R); if(R[i]>mid){ l=mid+1; ans=mid; } else{ r=mid-1; } } vec[ans].push_back(i); } int l=0,cnt=0; for(int i=1;i<14;i++){ for(auto x:vec[i]){ a[cnt++]=x; } if(abs(cnt-l)>1)sort(a+l,a+cnt-1,com); l=cnt; } for(int i=0;i<N;i++){ P[a[i]]=i+1; } } }

Compilation message (stderr)

koala.cpp: In function 'int maxValue(int, int)':
koala.cpp:21:9: warning: unused variable 'l' [-Wunused-variable]
   21 |     int l=1,r=13,ans;
      |         ^
koala.cpp:21:13: warning: unused variable 'r' [-Wunused-variable]
   21 |     int l=1,r=13,ans;
      |             ^
koala.cpp:21:18: warning: unused variable 'ans' [-Wunused-variable]
   21 |     int l=1,r=13,ans;
      |                  ^~~
koala.cpp: In function 'int greaterValue(int, int)':
koala.cpp:55:18: warning: unused variable 'ans' [-Wunused-variable]
   55 |     int l=1,r=13,ans;
      |                  ^~~
koala.cpp: In function 'bool com(int, int)':
koala.cpp:77:18: warning: unused variable 'ans' [-Wunused-variable]
   77 |     int l=1,r=13,ans;
      |                  ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...