1. 解题思路
- 完成导入使用数组.
- 处理书的编号存入另一个数组(按需要位数)
- 用变量比较取最小的符合数
- 输出
2.编号处理
- 用整数取模
- 用字符类型取指定位
3.代码
#include<iostream>
using namespace std;
int main(){
int n=0,q=0,x=1,y=-1,z;
int a[100],b[100],c[100],d[100];
cin>>n>>q;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int e=1;e<=q;e++){
cin>>b[e]>>c[e];
}
for(int r=1;r<=q;r++){
x=1;
for(int e=1;e<=b[r];e++){
x=x*10;}
for(int i=1;i<=n;i++){
z=sizeof(a[i])-1;
if(z>=b[i]){
d[i]=a[i]%x;
}
else{
d[i]=0;
}
}
y=-1;
for(int t=1;t<=q;t++){
if(c[r]==d[t]){
y=a[t];
}
}
cout<<y<<endl;
}
return 0;
}
*第一次接触noip的题,在老师的指导下完成的U•ェ•U