bilibili精灵鼠减速矩阵

精灵鼠从入口到出口的最少减少速度

http://www.nowcoder.com/questionTerminal/6171d3a8748248248c21a3c8f330396d

import java.util.*;
public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int n = Integer.valueOf(sc.nextLine());
        int[][] v = new int[n][n];
        int[][] mem = new int[n][n];//每点都记录到达此点的最小减速总值
        for(int i = 0; i < n; ++i){
            String temp = sc.nextLine();
            String[] str = temp.split(",");
            for(int j = 0; j < n; ++j) v[i][j] = Integer.valueOf(str[j]);
        }
        for(int i = 0; i < n; ++i){
            for(int j = 0; j < n; ++j){
                if(i == 0 && j == 0) mem[0][0] = v[0][0];
                else if(i == 0) mem[0][j] = v[0][j] + mem[0][j - 1];//边界直接累加
                else if(j == 0) mem[i][0] = v[i][0] + mem[i - 1][0];//边界直接累加
                else mem[i][j] = Math.min(v[i][j] + mem[i - 1][j], v[i][j] + mem[i][j - 1]);
            }
        }
        System.out.println(mem[n - 1][n - 1]);
    }
}
全部评论

相关推荐

祈求顺利毕业😁:简历很好了,多投吧牛油😂。主要是环境不好,大家也卷
点赞 评论 收藏
转发
2 收藏 评论
分享
牛客网
牛客企业服务