给我一个合理的解释!

每日一练,大家去学习栏目里肯定能看到,里面的题目难度层次划分的挺到位的,不过评分实在有点一言难尽:

这是题目,大家可以看一下:

题目名称:最长递增区间

时间限制:1000ms  内存限制:256M

题目描述

给一个无序数组,求最长递增的区间长度。如:[5,2,3,8,1,9] 最长区间 2,3,8 长度为 3。(测试用例仅做参考,我们会根据代码质量进行评分)

输入描述:

第一行输入整数n。 第二行输入n个整数。

输出描述:

输出最长递增的区间长度。

示例 

示例1

输入

6
5 2 3 8 1 9

输出

3

啊,代码呢,我是用c++做的,大家可以检查一下

#include<bits/stdc++.h>
using namespace std;
int n,a[1000005],ans,js=1;
int main(){
    cin>>n;
    for (int i=1;i<=n;i++)
        cin>>a[i];
    for (int i=2;i<=n;i++)
    {
    	cout<<js<<" "<<ans<<endl; 
        if (a[i]>a[i-1]) js++;
        else ans=max(ans,js),js=1;
        ans=max(ans,js);
    }
    cout<<ans;
    return 0;
}

思路我就是用最笨(~ ̄(OO) ̄)ブ的方法做的:

从第二位开始,扫描数组,如果遇到了不是后一位大于前一位的话就先保存数据,然后变成1

大概就是这样

结果很激动人心啊,我就不截图了,你就看一看下面这段文字吧!

作答结果

提交结果

执行用时

内存消耗

语言

提交时间

不通过3ms9MBC++

2022/11/12 19:37

好激动人心啊! 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值