题解 | 小红的地砖

小红的地砖

https://www.nowcoder.com/practice/8cd083c66a5f43489a532164e2a2304d

import java.util.Scanner;
import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
       int n=in.nextInt();
       int[]arr=new int[n];
       for(int i=0;i<n;i++){
        int a=in.nextInt();
        arr[i]=a;
       }
   
       int result=method(n,arr);
       System.out.print(result);

    }
    public static int method( int n,int arr[]){
        int a=0;//表示i-2的初始位置
        int b=arr[1];//表示i-1的初始位置
       
        for(int i=2;i<n;i++){
          int result= Math.min(a,b)+arr[i];//把所有格子分成多次目的地,目的地的体力值是必然要加的所以取一步或者两步的最小值,就是这个小目的地的最佳路线
            a=b;//更新i-2的位置
            b=result;//更新i-1的位置
        }
        return b;//所有最佳小路线相加就是最佳大路线
       
}
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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