#include <cstdio>
int a[200000000];
const int INF = 0x7fffffff;
int main()
{
int n1,n2,cnt=0,temp;
scanf("%d",&n1);
for(int i=0;i<n1;i++)
scanf("%d",&a[i]);
a[n1]=INF;
scanf("%d",&n2);
//mid为最终中位数下标
int mid=(n1+n2-1)/2;
int i=0,j=0;
scanf("%d",&temp);
//cnt最终为mid,即cnt最终为中位数下标
while (cnt<mid)
{
if(a[i]<temp) i++;
else
{
j++;
if(j<n2) scanf("%d",&temp);
else if(j==n2) temp=INF;
else break;
}
cnt++;
}
printf("%d\n",a[i]<temp?a[i]:temp);
return 0;
}
PAT 1029 Median (25 分)
最新推荐文章于 2022-08-30 15:17:18 发布