题解 | #Redraiment的走法#

Redraiment的走法

http://www.nowcoder.com/practice/24e6243b9f0446b081b1d6d32f2aa3aa

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        while(in.hasNextInt()){
            int n = in.nextInt();
            int max = 0;
            int[] array = new int[n];
            for(int i=0; i<n; i++){
                array[i] = in.nextInt();
            }
            System.out.println(walk(0, 0, 0, array));
        }
    }
    //now第几格
    //n已经走了几步
    public static int walk(int now, int last, int n, int[] array){
        int max = n;
        for(int i=now; i<array.length; i++){
            if(n == 0 || (array[i] > array[last])){
                max = Math.max(max, walk(i+1, i, n+1, array));
            }
        }
        return max;
    }
}
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务