guoxiao @ 2019-11-05 19:01:26
using namespace std; int a[10005],b[10005],c[10005],d[10005]; //图书编码 位数 读者编码
int main() { int n,q;//书的数量 读者数量
int e=-1;
scanf("%d%d",&n,&q);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
sort(a,a+n+1);
for(int i=1;i<=n;i++)
{
d[i]=1;
}
for(int j=1;j<=q;j++)
{
scanf("%d%d",&b[j],&c[j]);
}
for (int i=1;i<=q;i++)
{
for (int j=1;j<=b[i];j++)
{
d[i]*=10;
}
}
for (int i=1;i<=q;i++)
{
for (int j=1;j<=n;j++)
{
if (a[j]%d[i]==c[i])
{
printf("%d\n",a[j]);
break;
}
else if (j==n)
{
printf("%d\n",e);
break;
}
}
}
return 0;
}
by guoxiao @ 2019-11-05 19:02:09
前两个点re 不知道为啥,求解,谢谢,在线等
by Keith_2006 @ 2019-11-05 19:17:50
我请不要使用Md强调头文件的重要性
希丰展?使Md
by Keith_2006 @ 2019-11-05 19:18:21
include<cstdio>
include<algorithm>
using namespace std; int a[10005],b[10005],c[10005],d[10005]; //图书编码 位数 读者编码
int main() { int n,q;//书的数量 读者数量
int e=-1;
scanf("%d%d",&n,&q);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
sort(a,a+n+1);
for(int i=1;i<=n;i++)
{
d[i]=1;
}
for(int j=1;j<=q;j++)
{
scanf("%d%d",&b[j],&c[j]);
}
for (int i=1;i<=q;i++)
{
for (int j=1;j<=b[i];j++)
{
d[i]*=10;
}
}
for (int i=1;i<=q;i++)
{
for (int j=1;j<=n;j++)
{
if (a[j]%d[i]==c[i])
{
printf("%d\n",a[j]);
break;
}
else if (j==n)
{
printf("%d\n",e);
break;
}
}
}
return 0;
}
by Ryo_Yamada @ 2019-11-05 19:18:59
应该是这里
for(int i=1;i<=n;i++)
{
d[i]=1;
}
和这里
for (int i=1;i<=q;i++)
{
for (int j=1;j<=b[i];j++)
{
d[i]*=10;
}
}
一个循环用的n次,一个用的q次,d[10005]又是全局变量自动为0,如果n<q,下面出现%0的情况就RE了
对了,下面循环每次都要将e赋值为-1
by guoxiao @ 2019-11-05 19:28:00
@breeze末影 那应该怎么改呢,将第一个循环改为q吗
by guoxiao @ 2019-11-05 19:28:43
@breeze末影 改为q就过了,谢谢