大疆软件A卷的第二题,请问什么叫输入多组数据???
用java编的,请问什么叫输入多组数据,这个多组怎么界定??while(true)死循环吗????
一个输入把我搞死了,,,,,测试用例都是对的,,通过率是0,,,我特么。。
public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String line1 = scanner.nextLine(); String str[] = line1.split("\\s+"); int lcount = Integer.valueOf(str[0]); //零食种类,即行数 int money = Integer.valueOf(str[1]); //总钱数 int sumnums = 0; Listlistv = new LinkedList(); Listlistp = new LinkedList(); listv.add(0); listp.add(0); for (int i = 0; i < lcount; i++) { String line2 = scanner.nextLine(); String arr[] = line2.split("\\s+"); int value = Integer.valueOf(arr[0]); int manyil = Integer.valueOf(arr[1]); int nums = Integer.valueOf(arr[2]); sumnums = sumnums + nums; for (int k = 0; k < nums; k++) { listv.add(value); listp.add(manyil); } } int dp[][] = new int[sumnums + 1][money + 1]; //物品数量、总钱数 int v[] = new int[listv.size()]; for (int i = 0; i < v.length; i++) { v[i] = listv.get(i); } int p[] = new int[listp.size()]; for (int i = 0; i < p.length; i++) { p[i] = listp.get(i); } // int v[] = {0,26,26,26,26,5,5,5,5,5,5};//价格 // int p[] = {0,100,100,100,100,1,1,1,1,2,2};//满意度 for (int i = 1; i < dp.length; i++) { for (int j = 1; j < dp[0].length; j++) { if (j < v[i]) { dp[i][j] = dp[i - 1][j]; continue; } int v1 = dp[i - 1][j - v[i]] + p[i]; int v2 = dp[i - 1][j]; dp[i][j] = v1 > v2 ? v1 : v2; } } System.out.println(dp[sumnums][money]); }