제출 #106701

#제출 시각아이디문제언어결과실행 시간메모리
106701PajarajaXOR (IZhO12_xor)C++17
0 / 100
3 ms384 KiB
#include <bits/stdc++.h> #define MAXN 250007 using namespace std; int t,sn[2][30*MAXN],mn[30*MAXN],x,n,arr[MAXN]; void ubaci(int s,int d,int b,int ind) { if(d==-1) return; int z=((1<<d)&b)>>d; //printf("%d",z); if(!sn[z][s]) {sn[z][s]=++t; mn[sn[z][s]]=ind;} ubaci(sn[z][s],d-1,b,ind); } int poredi(int s,int d,int b) { if(d==-1) return MAXN; int z=((1<<d)&b)>>d,sol=MAXN; if(!(x&(1<<d)) && sn[1-z][s]) sol=mn[sn[1-z][s]]; sol=min(sol,poredi(sn[z][s],d-1,b)); return sol; } int main() { scanf("%d%d",&n,&x); int mx=0,mnd,tr=0; for(int i=1;i<=n;i++) { int np; scanf("%d",&np); tr^=np; int kn=i-poredi(0,29,tr^x); if(kn>mx) {mx=kn; mnd=i-kn+1;} ubaci(0,29,tr,i); //printf("\n%d\n",t); } //for(int i=0;i<32;i++) printf("%d\n",mn[i]); if(x==0) {mx=n; mnd=1;} printf("%d %d",mnd,mx); }

컴파일 시 표준 에러 (stderr) 메시지

xor.cpp: In function 'int main()':
xor.cpp:23:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d%d",&n,&x);
  ~~~~~^~~~~~~~~~~~~~
xor.cpp:28:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d",&np); tr^=np;
   ~~~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...