P1567 统计天数
题目描述
炎热的夏日,KC 非常的不爽。他宁可忍受北极的寒冷,也不愿忍受厦门的夏天。最近,他开始研究天气的变化。他希望用研究的结果预测未来的天气。
经历千辛万苦,他收集了连续 N(1≤N≤10^6 ) 的最高气温数据。
现在,他想知道最高气温一直上升的最长连续天数。
输入格式
第 1 行:一个整数 N,1≤N≤10
6
第 2 行:N个空格隔开的整数,表示连续 NN 天的最高气温。0≤ 最高气温≤10^9 。
输出格式
1 行:一个整数,表示最高气温一直上升的最长连续天数。
输入输出样例
输入
10
1 2 3 2 4 5 6 8 5 9
输出
5
1 解法: 2 #include<bits/stdc++.h> 3 using namespace std; 4 5 int main() 6 { 7 /*思路: 8 1:输入n个数据存入数组中 9 2:遍历 i=0->n 数据连续上升,Maxsum,Max 10 3:一旦变化了,那么就从1开始继续算 11 12 */ 13 vector<int> v; 14 int data; 15 int n; 16 cin>>n; 17 for(int i=0;i<n;i++){ 18 cin>>data; 19 v.push_back(data);//数据都放在vector里面v 20 } 21 int Maxsum=1;//取出来第一个数据,算是第一天 22 int Max=0;//计算最大值,连续上升的最大长度 23 for(int i=1;i<n;i++){ 24 if(v[i]>v[i-1]){ 25 Maxsum++; 26 if(Maxsum>Max) Max=Maxsum; 27 }else{ 28 Maxsum=1; 29 } 30 } 31 cout<<Max<<endl; 32 return 0; 33 }