Submission #483065

#TimeUsernameProblemLanguageResultExecution timeMemory
483065Lam_lai_cuoc_doipopa (BOI18_popa)C++17
0 / 100
1 ms420 KiB
#include <bits/stdc++.h> #include "popa.h" using namespace std; using ll = long long; using ld = long double; using ull = unsigned long long; template <class T> void read(T &x) { x = 0; register int c; while ((c = getchar()) && (c > '9' || c < '0')) ; for (; c >= '0' && c <= '9'; c = getchar()) x = x * 10 + c - '0'; } constexpr bool typetest = 0; constexpr int N = 1e3 + 5; constexpr ll Inf = 1e17; int *l, *r; int solve(int left, int right) { if (left == right) return left; int le, mid, hi; while (le <= hi) { mid = (le + hi) / 2; if (query(left, mid, left, right)) hi = mid - 1; else le = mid + 1; } int root = le; if (root > left) l[root] = solve(left, root - 1); if (root < right) r[root] = solve(root + 1, right); return root; } int solve(int n, int *Left, int *Right) { l = Left; r = Right; for (int i = 0; i < n; ++i) l[i] = r[i] = -1; return solve(0, n - 1); } /* void Read() { } void Solve() { } int32_t main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); if (fopen("xor.INP", "r")) { freopen("xor.inp", "r", stdin); freopen("xor.out", "w", stdout); } int t(1); if (typetest) cin >> t; for (int _ = 1; _ <= t; ++_) { // cout << "Case #" << _ << ": "; Read(); Solve(); } // cerr << "\nTime elapsed: " << 1000 * clock() / CLOCKS_PER_SEC << "ms\n"; } /**/

Compilation message (stderr)

popa.cpp:93:1: warning: "/*" within comment [-Wcomment]
   93 | /**/
      |  
popa.cpp: In function 'void read(T&)':
popa.cpp:13:18: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
   13 |     register int c;
      |                  ^
popa.cpp: In function 'int solve(int, int)':
popa.cpp:46:24: warning: 'le' may be used uninitialized in this function [-Wmaybe-uninitialized]
   46 |         r[root] = solve(root + 1, right);
      |                   ~~~~~^~~~~~~~~~~~~~~~~
popa.cpp:34:19: warning: 'hi' may be used uninitialized in this function [-Wmaybe-uninitialized]
   34 |         mid = (le + hi) / 2;
      |               ~~~~^~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...