//http://contest-hunter.org:83/contest/0x00%E3%80%8C%E5%9F%BA%E6%9C%AC%E7%AE%97%E6%B3%95%E3%80%8D%E4%BE%8B%E9%A2%98/0503%20%E5%A5%87%E6%95%B0%E7%A0%81%E9%97%AE%E9%A2%98 #include #include using namespace std; const int maxn=250005; int n,x,a[maxn],b[maxn]; long long tot; void GB(int *a,int *b,int len) { if(len<=1) return; int M=len>>1,p1=0,p2=M,p=0; GB(a,b,M); GB(a+M,b+M,len-M); while(p1