Submission #550581

#TimeUsernameProblemLanguageResultExecution timeMemory
550581PherokungLibrary (JOI18_library)C++14
19 / 100
451 ms356 KiB
#include <cstdio> #include <vector> #include "library.h" #include<bits/stdc++.h> using namespace std; int adj[1005][2],st=0,vis[1005]; void Solve(int n){ vector<int> res; if(n == 1){ res.push_back(1); Answer(res); return; } vector<int> M(n), K, K2; K = M; for(int i=1;i<=n;i++) K[i-1] = 1; for(int i=1;i<=n;i++){ K[i-1] = 0; if(Query(K) == 1){ st = i; break; } K[i-1] = 1; } int pos = st,pre = -1; for(int i=1;i<=n;i++){ res.push_back(pos); vis[pos] = 1; if(i == n) break; int be,ed = n, mid, mi = 1e9, keep = pos; for(int i=1;i<=n;i++) if(vis[i] == 0){ be = i; break; } while(be <= ed){ mid = (be+ed)/2; K = M; for(int j=1;j<=mid;j++) if(j != pre) K[j-1] = 1; K2 = K; K[pos-1] = 1, K2[pos-1] = 0; int A,B; if(K2 == M) A = 0, B = 1; else A = Query(K2), B = Query(K); if(B <= A){ ed = mid - 1; mi = min(mi,mid); } else be = mid + 1; } pos = mi; pre = keep; } Answer(res); }

Compilation message (stderr)

library.cpp: In function 'void Solve(int)':
library.cpp:39:13: warning: 'be' may be used uninitialized in this function [-Wmaybe-uninitialized]
   39 |    mid = (be+ed)/2;
      |          ~~~^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...