天天看点

【洛谷】P1567 统计天数题目地址:

题目地址:

https://www.luogu.com.cn/problem/P1567

题目描述:

炎热的夏日,KC非常的不爽。他宁可忍受北极的寒冷,也不愿忍受厦门的夏天。最近,他开始研究天气的变化。他希望用研究的结果预测未来的天气。经历千辛万苦,他收集了连续 N ( 1 ≤ N ≤ 1 0 6 ) N(1≤N≤10^6) N(1≤N≤106)的最高气温数据。现在,他想知道最高气温一直上升的最长连续天数。

输入格式:

第 1 1 1行:一个整数 N N N。 1 ≤ N ≤ 1 0 6 1≤N≤10^6 1≤N≤106

第 2 2 2行: N N N个空格隔开的整数,表示连续 N N N天的最高气温。 0 ≤ 最 高 气 温 ≤ 1 0 9 0≤ 最高气温≤10^9 0≤最高气温≤109。

输出格式:

1 1 1行:一个整数,表示最高气温一直上升的最长连续天数。

代码如下:

#include <iostream>
using namespace std;

int n, res, cnt, last;

int main() {
    cin >> n;
    last = -1;
    for (int i = 1; i <= n; i++) {
        int x;
        cin >> x;
        if (x > last) cnt++;
        else cnt = 1;
        
        last = x;
        res = max(res, cnt);
    }

    printf("%d\n", res);

    return 0;
}
           

时间复杂度 O ( n ) O(n) O(n),空间 O ( 1 ) O(1) O(1)。

继续阅读