SCANF read in actually will time out ... Use a bit of input hang only ac ...
#include <cstdio>#include<cstring>#include<cmath>#include<string>#include<queue>#include<iostream>#include<algorithm>using namespacestd;Const intmaxn=1000000+Ten;intA[MAXN],B[MAXN];intN1,n2;inlineBOOLScan_d (int&num) { Char inch;BOOLisn=false; inch=GetChar (); if(inch==eof)return false; while(inch!='-'&& (inch<'0'||inch>'9'))inch=GetChar (); if(inch=='-') {isn=true; num=0;} Elsenum=inch-'0'; while(inch=getchar (),inch>='0'&&inch<='9') {num*=Ten, num+=inch-'0'; } if(IsN) num=-num; return true;}intMIN (intAintb) { if(A<B)returnA; returnb;}intMain () {scanf ("%d",&N1); for(intI=1; i<=n1;i++) Scan_d (A[i]); scanf ("%d",&n2); for(intI=1; i<=n2;i++) Scan_d (B[i]); intsz=0;intp1=1, p2=1; A[n1+1]=999999999, b[n2+1]=999999999; while(sz<n1+n2) {SZ++; intTmp1=a[p1],tmp2=B[P2]; if(TMP1<TMP2) p1++;Elsep2++; if(sz== (n1+n2+1)/2) {printf ("%d\n", MIN (TMP1,TMP2)); Break; } } return 0;}
PAT (Advanced level) 1029. Median (25)