只能输出一个23不知道为啥

P3955 [NOIP2017 普及组] 图书管理员

```cpp #include<bits/stdc++.h> using namespace std; struct reader{ int number,xqm; }a[10000000]; int ans,n,q,x[10000000]; int m[10]={1,10,100,1000,10000,100000,1000000,10000000,100000000}; int main() { cin>>n>>q; for(int i=1;i<=n;i++) cin>>x[i]; for(int i=1;i<=q;i++) cin>>a[i].number>>a[i].xqm; sort(x+1,x+1+n); for(int i=1;i<=q;i++) { ans=-1; for(int j=1;j<=n;j++) { if(x[j]%m[a[i].number]==a[i].xqm) { ans=x[j];break; } } cout<<ans<<endl; } } ``` 可以参考一下
by Zhouw @ 2022-09-19 23:24:47


排版乱了点,抱歉
by Zhouw @ 2022-09-19 23:25:30


```cpp #include<bits/stdc++.h>//图书管理员 using namespace std; int main() { long long n,q,x,d = 1; long long a[1005],b[1005],c[1005]; cin>>n>>q; for(int i = 0; i < n; i++)//输入 { cin>>a[i]; } sort(a,a+n);//应题目要求从小到大 for(int i = 0; i < q; i++)//输入 { cin>>b[i]>>c[i]; } for(int i = 0; i < q; i++) { d = 1;//记得还原 for(int j = 0; j < b[i]; j++) { d = d*10;//算出要模的数 } for(int k = 0; k < n; k++) { if(a[k]%d==c[i]){cout<<a[k]<<endl;break;} if(k==n-1){cout<<"-1"<<endl;break;} } } return 0; } ```
by greenhb @ 2022-09-19 23:40:36


@[tcdxh](/user/701653) 过了,记得if后面要加大括号,否则第一次就break了
by greenhb @ 2022-09-19 23:41:55


|