在Google Kick Start 2020 A轮中获取样本失败



我开始通过谷歌kick start测试我的技能,并选择过去的一个问题来看看它是如何工作的,然后我陷入了困境。

这是我为Google Kick Start 2020年A轮计划编写的java代码:分配我已经通过了所有的测试用例,并自行测试,但当我将代码提交给谷歌启动比赛时,我得到了示例失败:WA我不知道这些问题出了什么问题。。。请帮帮我

这是说明

问题

有N栋房子待售。第i栋房子花了艾美元买。你有B美元的预算要花。

你最多能买多少套房子?输入

输入的第一行给出了测试用例的数量,接下来是T.T测试用例。每个测试用例以一行开始,该行包含两个整数N和B。第二行包含N个整数。第i个整数是Ai,即第i栋房子的成本。输出

对于每个测试用例,输出一行包含用例#x:y,其中x是测试用例编号(从1开始(,y是您可以购买的最大房屋数量。限制

时间限制:每个测试集15秒。内存限制:1GB。1≤T≤100。1≤B≤10^5。1≤Ai≤1000,对于所有i。测试集1

1≤N≤100。测试集2

1≤N≤10^5。样品

输入

输出

3410020 90 40 904 5030 30 10 103300999 999 999

案例1:2案例2:3案例3:0

在示例案例#1中,您的预算为100美元。你可以花20+40=60美元买第一套和第三套房子。在示例案例2中,您的预算为50美元。你可以花30+10+10=50美元买第一套、第三套和第四套房子。在示例案例#3中,您的预算为300美元。你不能买任何房子(所以答案是0(。

注意:与之前的版本不同,在Kick Start 2020中,所有测试集都是可见的判决测试集,这意味着你在提交后会收到即时反馈

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(new BufferedReader(new InputStreamReader(System.in)));
int testCases = sc.nextInt();
int n;
double b;
int[] a;
int count;
for (int i = 1; i <= testCases; i++) {
n = sc.nextInt();
a = new int[n];
b = sc.nextDouble();
for (int j = 0; j < n; j++) {
a[j] = sc.nextInt();
}
Arrays.sort(a);
count = 0;
for (int j = 0; j < n; j++) {
b = b - a[j];
if (b < 0) {
break;
}
count++;
}
System.out.println(String.format("Case #%d :%d", i, count));
}
}
}

在输出中,应该使用"案例#%d:%d";而不是";案例#%d:%d";。小心点!

最新更新