最大数位置

题目:寻找数组中的最大元素位置

题目描述:

给定一个整数 n 和一个包含 n 个整数的数组,编写一个程序找到数组中最大元素的 1-based 索引位置并输出。

输入格式:
  • 第一行包含一个整数 n (1 ≤ n ≤ 1000),表示数组的元素个数。
  • 第二行包含 n 个整数,表示数组中的元素。每个整数的绝对值不超过 109109。
输出格式:
  • 输出一个整数,表示数组中最大元素的 1-based 索引位置。
示例:

输入

5 3 1 4 1 5

输出

5

说明:

在上述示例中,数组为 [3, 1, 4, 1, 5],最大元素为 5,位于第 5 个位置(1-based 索引)。

代码如下:

#include<bits/stdc++.h>
using namespace std;
long long a[1005],n;
int main(){
	cin>>n;
	for(int i=0;i<n;i++) cin>>a[i];
	cout<<max_element(a,a+n)-a+1;
    return 0;
}

该程序的功能是找出输入数组中的最大元素并输出其位置(1-based 索引)。

解读步骤:

  1. 库引入

    • #include<bits/stdc++.h>:引入 C++ 标准库的所有头文件。
  2. 变量声明

    • long long a[1005]:定义一个数组 a,可以存储最多 1005 个 long long 类型的整数。
    • long long n:用于存储数组中元素的数量。
  3. 输入

    • cin >> n:读取用户输入的数组元素个数 n
    • for(int i=0;i<n;i++) cin >> a[i]:使用循环读取 n 个整数并存入数组 a
  4. 查找最大元素

    • cout << max_element(a, a+n) - a + 1
      • max_element(a, a+n):返回指向数组 a 中最大元素的指针。
      • - a:计算该指针与数组 a 开头的指针之间的差值,即最大元素的索引(0-based)。
      • + 1:将索引转换为 1-based 索引。
  5. 输出

    • 输出最大元素的位置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值