SOURCE

/*
流水潺潺(Web)
时间限制: 3000MS
内存限制: 1048576KB
题目描述:
最近,小七发现了一处干涸的河道。

河道不同的位置高度也不相同,从河道起点到终点有n个位置,这些位置编号为1~n。每一个位置i的高度可以表示为hi(1、n是河道的两端,因此1左边、n右边的高度可以视为无穷大)。

本着环保的精神,小七希望在恰好一个位置注入水源,使得这个位置是有水的。自然地,水会从高处向低处流动,但原来的位置仍然有水。具体地来说,如果当前一个位置i是有水的,并且有某一个相邻的格子j高度严格小于i(hj < hi),那么j也会成为有水的,并且i仍然是有水的。对于j相邻的格子也是如此。

现在小七想知道,通过一次注入水源最多可以使得多少个位置变成有水的



输入描述
第一行一个正整数n(1<=n<=5000),表示河道有n个位置

第二行n个正整数,第i个表示位置i的高度hi(0<=hi<=1000000000)

输出描述
输出仅一行,即答案


样例输入
5 
5 1 2 1 5
样例输出
3
*/
function readInt(){
    return 5;
}
function read_line(){
    return '5 1 2 1 5';
}
var n = readInt();
var h = read_line().split(' ');

var blocks = 1;
for(i in h){
    h[i] = Number(h[i]);
}
console.log(h)
function testLeft(i){
    if(i-1>=0 && h[i-1]<h[i]){
        blocks = blocks+ 1;
        console.log('left[TRUE]',i,blocks);
        testLeft(i-1);
    }else{
        console.log('left',i,blocks);

    }
}
function testRight(i){
    if(i+1<n && h[i+1]<h[i]){
        blocks = blocks+ 1;
        console.log('right[TRUE]',i,blocks);
        testRight(i+1);
    }else{
        console.log('right',i,blocks);
    }
}
for(var i = 0; i < n; i++){
    var old_blocks = blocks;
    blocks = 1;
    console.log('---before---',i,blocks);
    testLeft(i);
    testRight(i);
    console.log('---after---',i,blocks);
    if(old_blocks > blocks){
        blocks = old_blocks;
    }
}
console.log(blocks)
console 命令行工具 X clear

                    
>
console