现在的位置: 首页 > 综合 > 正文

hdu 3711

2018年12月31日 ⁄ 综合 ⁄ 共 469字 ⁄ 字号 评论关闭

区赛的水题

 

 

#include<stdio.h>
#include<stdlib.h>
int a[110],b[110];
int cmp(const void *a,const void *b)
{
	return *(int *)a-*(int *)b;
}
int main()
{
   int t,n,m,i,j,x,y,sum,min,k;
   scanf("%d",&t);
    while(t--)
	{
		scanf("%d%d",&n,&m);
		for(i=0;i<n;i++)
			scanf("%d",&a[i]);
		qsort(a,n,sizeof(a[0]),cmp);
		for(i=0;i<m;i++)
			scanf("%d",&b[i]);
		for(i=0;i<m;i++)
		{
			min=10000,k=-1;
			for(j=0;j<n;j++)
			{
				x=b[i];y=a[j];sum=0;
				while(x!=0||y!=0)
				{
					if(x%2!=y%2)
						sum++;
					x/=2;
					y/=2;
				}
				if(min>sum)
				{
					min=sum;
					k=j;
				}
			}
			printf("%d\n",a[k]);
		}
	}
	return 0;
}

 

【上篇】
【下篇】

抱歉!评论已关闭.