刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

进阶的卡莎
虚空之女·卡莎考入了战斗学院,她的父亲虚空行者·卡萨丁要检查她的考试成绩。已知卡莎一段时间内的成绩序列,请你帮卡萨丁计算卡莎在这段时间内最长的成绩连续上升(相等不算做连续上升)的长度。

例如,给出卡莎的成绩序列是85 90 80 85 90 95 95 80 75 75,其中连续上升序列包括"85 90"和"80 85 90 95"两组,后者是最长的连续上升成绩序列(相等不算做连续上升),应该输出后者的长度4。
时间限制:1000
内存限制:65536
输入
输入的第一行是序列的长度N(1 <= N <= 100)。 第二行给出序列中的N个整数,这些整数的取值范围都在0到100。
输出
最长的成绩连续上升的长度(相等不算做连续上升)。
样例输入

10
85 90 80 85 90 95 95 80 75 75

样例输出

4

使用微信搜索喵呜刷题,轻松应对考试!

答案:

include<bits/stdc++.h>

using namespace std;

int main()

{

int n,a[101],t=1,max=0;

cin>>n;

for(int i=1;i<=n;i++)

{

cin>>a[i];

}

for(int i=1;i<=n;i++)

{

if(a[i]<a[i+1])

{

t++;

if(t>max) max=t;

}

else

{

t=1;

}

}

cout<<max;

return 0;

}

解析:

【喵呜刷题小喵解析】首先,我们定义了一个整型数组a[n]来存储输入的序列,n为序列的长度。然后,我们遍历数组a,从第二个元素开始,如果当前元素大于前一个元素,说明成绩是上升的,那么我们就将当前连续上升的长度current_length加1,并且判断这个长度是否大于之前记录的最大长度max_length,如果大于,则更新max_length。如果当前元素不大于前一个元素,说明成绩不是上升的,那么我们就将current_length重置为1。最后,我们输出max_length,即为最长的连续上升的长度。注意,题目中要求的是成绩连续上升的长度,相等不算做连续上升,所以在判断成绩是否上升时,我们使用了大于号(>)而不是大于等于号(>=)。
创作类型:
原创

本文链接:进阶的卡莎 虚空之女·卡莎考入了战斗学院,她的父亲虚空行者·卡萨丁要检查她的考试成绩。已知卡莎一段时

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share