AcWing 742. 最小数和它的位置
原题链接
中等
作者:
GLCarrot
,
2023-05-27 18:38:35
,
所有人可见
,
阅读 133
防止忘记自己怎么思考的
这一类排序并且输出下标的题应该都差不多做法
#include <iostream>
using namespace std;
int main()
{
int n,m[1010],t,s = 1;
scanf("%d",&n);
for(int i = 0; i < n; i ++)
scanf("%d ",&m[i]);
t = min(m[0],m[1]);
//给t赋值为第1和2这两个数的最小值
for(int i = 2; i < n; i ++)
//从第3个数开始循环到第n个数(共n个数,下标最大为n - 1)
{
t = min(t , m[i]);
//t和第三个数以后的每一个数比较,若比t小则更新t的值
if(i == n - 1)
printf("Minimum value: %d\n",t);
}
for(int i = 0; i < n; i ++)
//再次遍历数组,找到和最小值t相等的数,输出它的位置
{
if(m[i] == t)
{
printf("Position: %d",i);
break;
//按i从0开始,找到就结束遍历,即可输出下标最小的那一个数
}
}
return 0;
}