题目描述
炎热的夏日,KC 非常的不爽。他宁可忍受北极的寒冷,也不愿忍受厦门的夏天。最近,他开始研究天气的变化。他希望用研究的结果预测未来的天气。

经历千辛万苦,他收集了连续 N(1 \leq N \leq 10^6)N(1≤N≤10
6
) 的最高气温数据。

现在,他想知道最高气温一直上升的最长连续天数。

输入格式
第 1 行:一个整数 NN 。1 \leq N \leq 10^61≤N≤10
6

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

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

输入输出样例
输入 #1 复制
10
1 2 3 2 4 5 6 8 5 9
输出 #1 复制
5

这里开一个大数组来存的话,,内存会爆,然后再看到题解一个也是写java的老哥,用快速读取,切成一个刚好等长的数组。这样子内存总算不会爆了,,但还有一个问题就是有一个测试点会TLE。。

package javas.weleness.统计天数;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

	public static void main(String[] args) throws IOException {
		
		BufferedReader bfBufferedReader =new BufferedReader(new InputStreamReader(System.in));
		
		int n = bfBufferedReader.read();
		
		bfBufferedReader.readLine();
		
		String[] split = bfBufferedReader.readLine().split(" ");
		
		int max = 0;
		int count = 0;
		for (int i = 1; i < split.length; i++) {
			int c = Integer.parseInt(split[i]);
			int d = Integer.parseInt(split[i-1]);
			
			if((c-d) > 0) {
				count++;
			}else {
				 max=Math.max(max, count);
				count = 0;
			}
		}
		System.out.println(max+1);
		
	}

}