大佬帮帮我
2026-01-23 20:49:36
发布于:山东
59阅读
0回复
0点赞
哎服了,到底错哪了
#include<bits/stdc++.h>
using namespace std;
long long a[1007000];
int main(){
int t;
cin>>t;
for(int i=1;i<=t;i++){
int n,k;
cin>>n>>k;
if((k>n)||(k==0)){
cout<<" -1"<<endl;
}else{
for(int j=1;j<=n;j++){
cin>>a[j];
}
cout<<" "<<a[k]<<endl;
}
}
return 0;
}
全部评论 7
如果 或 时,你的程序不会输入这个数组。就会导致下面的输入错误
2026-01-23 来自 浙江
3AC了感谢!!!
2026-01-23 来自 山东
2似乎你还没提交呢
2026-01-23 来自 浙江
2哦没事了,ACGO特性
2026-01-23 来自 浙江
1
在输出-1或a[k]时,前面都有四个空格。
然而,在代码中我们看到了一个问题:当k>n或者k==0时,我们输出" -1",并在每次输出时前面加了四个空格。
但是,在输入数据部分,循环是从j=1到j<=n,将输入存入a[j]。这个代码在逻辑上看起来是符合要求的,但有一个细节需要关注:
当k>n或k==0时不合法,输出-1(带四个空格)。
否则输出a[k](带四个空格)。但我们需要注意:题目要求可能是在多组数据中,每组数据输出一个答案。
1周前 来自 江西
1啥题
2026-01-23 来自 广东
1上面有
2026-01-23 来自 浙江
1谢谢
2026-01-24 来自 广东
0
这个宽度不用管,你就正常输出就行,不需要保留场宽
2026-01-23 来自 浙江
1666
1周前 来自 北京
0AC了,多亏大佬帮忙
2026-01-23 来自 山东
0太简单了吧
2026-01-23 来自 北京
0建议紫衫
2026-01-23 来自 浙江
0数组开大了呗
2026-01-23 来自 北京
0看来你也不懂
2026-01-23 来自 浙江
0



























有帮助,赞一个