OpenJudge-NOI-1.5.06-整数序列的元素最大跨度值

01 题目来源

http://noi.openjudge.cn/ch0105/06/

02 算法思路

⑴ 首先,假设第一个整数为最大值,保存在变量max中,假设第一个整数为最小值,保存在变量min中;
⑵ 其次,从第二个整数开始,到最后一个整数为止:如果当前整数小于min,则将min更新为当前整数,否则如果当前整数大于max,则将max更新为当前整数。

03 过程步骤

⑴ 定义变量:int类型的n、t、max、min,分别代表序列长度、每个整数、序列最大值、序列最小值;
⑵ 输入n、t的数值,此时t代表第一个整数,然后令max = t,min = t;
⑶ 利用for (int i = 2; i <= n; i++)循环处理如下:
	* 输入当前整数并保存在t中;
	* if (t < min) 则令min = t;
	* else if (t > max) 则令max = t;
⑷ 输出max - min的数值。

04 程序代码

#include <iostream>
using namespace std;

int main()
{
    int n; // 序列长度
    int t; // 每个整数
    int max; // 序列最大值
    int min; // 序列最小值
    cin >> n;
    cin >> t; // 输入第一个整数
    max = t; // 假设第一个整数是最大值
    min = t; // 假设第一个整数是最小值
    /* 从第二个整数开始,到最后一个整数为止 */
    for (int i = 2; i <= n; i++)
    {
        cin >> t; // 首先,输入当前整数
        if (t < min) // 如果当前整数t小于最小值min
        {
            min = t; // 则更新最小值min为t
        }
        else if (t > max) // 否则如果当前整数t大于最大值max
        {
            max = t; // 则更新最大值max为t
        }
    }
    cout << max - min; // 计算并输出最大跨度值
    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

江苏科技大学_计算机学院_潘磊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值