Submission #348345

#TimeUsernameProblemLanguageResultExecution timeMemory
348345MefarnisArchery (IOI09_archery)C++14
10 / 100
2097 ms7772 KiB
#include <bits/stdc++.h> #define fi first #define se second #define maxn 200000 #define pb push_back using namespace std; typedef pair<int,int> pi; int n,k; int ar[2*maxn]; int ansLast,ansInit; int main() { scanf("%d%d",&n,&k); for( int i = 0 ; i < 2*n ; i++ ) scanf("%d",&ar[i]); ansLast = n; for( int t = 0 ; t < n ; t++ ) { vector<pi> vec; for( int i = 0 ; i < n ; i++ ) vec.pb(pi(0,0)); vec[t].fi = ar[0]; for( int i = 1 , idx = 0 ; i < 2*n ; i++ ) { if(vec[idx].fi == 0) vec[idx].fi = ar[i]; else vec[idx++].se = ar[i]; } for( int r = 1 ; r <= k ; r++ ) { vector<pi> last = vec; for( int i = 0 ; i < n ; i++ ) vec[i] = pi(0,0); for( int i = 1 ; i < n ; i++ ) { vec[i-1].fi = min(last[i].fi,last[i].se); vec[i].se = max(last[i].fi,last[i].se); } vec[0].se = min(last[0].fi,last[0].se); vec[n-1].fi = max(last[0].fi,last[0].se); } for( int i = 0 ; i < n ; i++ ) if(vec[i].fi == ar[0] || vec[i].se == ar[0]) { if(i <= ansLast) { ansLast = i; ansInit = t; } break; } } printf("%d\n",ansInit+1); return 0; }

Compilation message (stderr)

archery.cpp: In function 'int main()':
archery.cpp:14:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   14 |  scanf("%d%d",&n,&k);
      |  ~~~~~^~~~~~~~~~~~~~
archery.cpp:16:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   16 |   scanf("%d",&ar[i]);
      |   ~~~~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...