Submission #54652

#TimeUsernameProblemLanguageResultExecution timeMemory
54652gs18115Secret (JOI14_secret)C++14
Compilation error
0 ms0 KiB
#include"secret.h" #include<unordered_map> using namespace std; unordered_map<unsigned long long,bool>CHK; unordered_map<unsigned long long,int>SEC; int ST[4567]; int N2; int Secret2(int X,int Y) { unsigned long long P; P=X; P<<=32; P|=Y; if(CHK[P]) return SEC[P]; CHK[P]=true; return SEC[P]=Secret(X,Y); } void P(int I,int N) { ST[I]=N; if(I==1) return; if(I&1) P(I>>1,Secret2(ST[I^1],N)); else P(I>>1,Secret2(N,ST[I^1])); } int Q(int S,int F) { if(S==F) return ST[S]; else if(S==F-1) return Secret2(ST[S],ST[F]); int A; A=Q(S+1>>1,F-1>>1); if(S&1) A=Secret2(ST[S],A); if(!(F&1)) A=Secret2(A,ST[F]); return A; } void Init(int N,int A[]) { for(N2=1;N2<N;N2<<=1); for(i=0;i<N;i++) P(i+N2,A[i]); int X; for(i=0;i<N2>>1;i++) X=Q(i+N2,i+N2+(N2>>1)); return; } int Query(int L,int R) { return Q(L+N2,R+N2); }

Compilation message (stderr)

secret.cpp: In function 'int Q(int, int)':
secret.cpp:36:10: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
     A=Q(S+1>>1,F-1>>1);
         ~^~
secret.cpp:36:17: warning: suggest parentheses around '-' inside '>>' [-Wparentheses]
     A=Q(S+1>>1,F-1>>1);
                ~^~
secret.cpp: In function 'void Init(int, int*)':
secret.cpp:46:9: error: 'i' was not declared in this scope
     for(i=0;i<N;i++)
         ^
secret.cpp:49:9: error: 'i' was not declared in this scope
     for(i=0;i<N2>>1;i++)
         ^