Submission #1056325

#TimeUsernameProblemLanguageResultExecution timeMemory
1056325MinbaevSecret (JOI14_secret)C++17
0 / 100
492 ms524288 KiB
#include "secret.h" using namespace std; const int Y = 1005; int t[Y*4], a[Y], n; void build(int tl, int tr, int v){ if(tl == tr){ t[v] = a[tl]; return; } int tm = tr + tl >> 1; build(tl,tm,v << 1); build(tm+1,tr,v << 1 | 1); t[v] = Secret(t[v << 1], t[v >> 1 | 1]); } int get(int tl, int tr, int v, int l, int r){ if(l <= tl && tr <= r){ return t[v]; } int tm = tr + tl >> 1; if(tm < l)return get(tm+1,tr,v << 1 | 1,l,r); if(tm + 1 > r)return get(tl,tm,v << 1,l,r); return Secret(get(tm+1,tr,v << 1 | 1,l,r), get(tl,tm,v << 1,l,r)); } void Init(int N, int A[]){ n = N; for(int i = 0; i < n; ++i) a[i] = A[i]; build(1, 0, n - 1); } int Query(int l, int r){ return get(1, 0, n - 1, l, r); }

Compilation message (stderr)

secret.cpp: In function 'void build(int, int, int)':
secret.cpp:14:14: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   14 |  int tm = tr + tl >> 1;
      |           ~~~^~~~
secret.cpp: In function 'int get(int, int, int, int, int)':
secret.cpp:25:14: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   25 |  int tm = tr + tl >> 1;
      |           ~~~^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...