Submission #156813

#TimeUsernameProblemLanguageResultExecution timeMemory
156813popovicirobertMinerals (JOI19_minerals)C++14
6 / 100
18 ms692 KiB
#include "minerals.h" #include <bits/stdc++.h> using namespace std; void Solve(int n) { vector <int> sol(2 * n); vector <bool> in(2 * n); int i; for(int bit = 0; (1 << bit) < 2 * n; bit++) { int ans; for(i = 0; i < 2 * n; i++) { if(i & (1 << bit)) { if(in[i]) continue; ans = Query(i + 1); in[i] = 1; } } for(i = 0; i < 2 * n; i++) { if(Query(i + 1) == ans) { sol[i] += (1 << bit); } Query(i + 1); } for(i = 0; i < 2 * n; i++) { if(i & (1 << bit)) { if(i & (1 << (bit + 1))) continue; Query(i + 1); in[i] = 0; } } } vector <bool> vis(2 * n); for(i = 0; i < 2 * n; i++) { if(vis[i] == 0) { vis[i] = vis[sol[i]] = 1; Answer(i + 1, sol[i] + 1); } } }

Compilation message (stderr)

minerals.cpp: In function 'void Solve(int)':
minerals.cpp:20:4: warning: 'ans' may be used uninitialized in this function [-Wmaybe-uninitialized]
    if(Query(i + 1) == 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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...