#include <stdio.h>
int a[100010];
void quicksort(int left,int right)
{
int i,j,t,temp;
if(left>right)
return ;
temp=a[left],i=left,j=right;
while(i!=j)
{
while(a[j]>=temp&&i<j)
{
j--;
}
while(a[i]<=temp&&i<j)
{
i++;
}
if(i<j)
{
t=a[i],a[i]=a[j],a[j]=t;
}
}
a[left]=a[i];a[i]=temp;
quicksort(left,i-1);
quicksort(i+1,right);
}
int main()
{
int n,q;
int i,j;
scanf("%d%d",&n,&q);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
quicksort(0,n);
int b[8];
b[0]=1,b[1]=10;
for(i=1;i<8;i++)
{
b[i+1]=b[i]*10;
}
int sum,need,mark;
for(i=0;i<q;i++)
{
scanf("%d%d",&sum,&need);
for(j=0;j<n;j++)
{ mark=0;
if(a[j]%b[sum]==need)
{
printf("%d\n",a[j]);
mark=1;
break;
}
}
if(mark==0)
{
printf("-1\n");
}
}
return 0;
}
全部评论
(1) 回帖