0
已解决
刘逸泽
初级守护
初级守护
5547 选择(min)
经验值:800 时间限制:1000毫秒
庐阳区2020年信息学竞赛试题
不许抄袭,一旦发现,直接清空经验!
题目描述 Description
正方体是特殊的长方体, 棱长都相等。有N个正方体,现在需要挑选出棱长最小的正方体。依次给定N个正方体的棱长(N1,N2,……,NN),输出棱长最小正方体的序号,若有多个,按照序号由小到大输出。
输入描述 Input Description
第一行一个整数N,
第二行,N个整数,依次表示序号1~序号N正方体的棱长。
输出描述 Output Description
一行, 一个或者多个整数,意义如题所述。
样例输入 Sample Input
8 9 2 5 4 3 9 2 6
样例输出 Sample Output
2 7
数据范围及提示 Data Size & Hint
对于30%的数据:
1<=N<=100,1<=Ni<=1000
对于50%的数据:1<=N<=1000,1<=Ni<=10000。
对于100%的数据:
1<=N<=100000,1<=Ni<=1000000
写了好多次,都不对。
一点思路都没有。
1
已采纳
李奕歌
初级天翼
初级天翼
不用结构体也可以
int n,a[100005],minn=100000;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
if(a[i]<minn) minn=a[i];
}
for(int i=1;i<=n;i++){
if(a[i]==minn) cout<<i<<" ";
}
望采纳
0
0
陈梓恒
初级守护
初级守护
结构体sort
struct node
{
int id,k;(下标,棱长)
}
最后sort
判断找最小的棱长,再找有几个
如果有K个
cout<<a[1].id<<" "<<a[2].id<<" "<<........<<a[k].id;
0
0