Java分行读取终端

 

 

import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        int C = scanner.nextInt();
        scanner.nextLine();
        String[] ans = scanner.nextLine().split(",");
        String[] ans1 = scanner.nextLine().split(",");
        int N = ans.length;
        int[] W = new int[N+1];
        int[] V = new int[N+1];
        int i = 1;
        for (String s : ans) {
            if (s.isEmpty()) continue;
            W[i++] = Integer.parseInt(s);
        }
        i = 1;
        for (String s : ans1) {
            if (s.isEmpty()) continue;
            V[i++] = Integer.parseInt(s);
        }

        int[][] dp = new int[N+1][C+1];
        for (i = 1; i <= N; i++) {
            for (int j = 0; j <= C; j++) {
                if (j >= W[i]) {
                    dp[i][j] = Math.max(dp[i-1][j], dp[i-1][j-W[i]] + V[i]);
                } else {
                    dp[i][j] = dp[i-1][j];
                }
            }
        }
        System.out.println(dp[N][C]);
    }
}

 

posted @ 2021-06-17 22:14  尘归风  阅读(80)  评论(0编辑  收藏  举报