你好我正在进行一场代码争夺挑战,我花了很多时间试图解决这个问题,我的所有测试用例都通过了我给出的,我还有4个需要通过的隐藏测试用例,但是除了其中一个隐藏的测试用例外,我正在通过。我的大脑完全被摧毁了,我已经创建了我可以想到的所有测试用例,并且所有测试用例都通过了。这只是一个隐藏的案例,我试过类型检查一切似乎都在检查。
孩子们得到了几块糖果。他们想要吃多少糖果 他们可以,但每个孩子必须吃与任何>完全相同数量的糖果。其他孩子。确定所有人都会吃掉多少块糖果 孩子们在一起个别的糖果不能分开。示例
对于n = 3且m = 10,输出应为 糖果(n,m)= 9。
每个孩子将吃3件。所以答案是9。
输入/输出
[时间限制] 4000ms(js)
[输入]整数n
子女人数。
约束: 1≤n≤10。
[输入]整数m
糖果的数量。
约束: 2≤m≤100。
[输出]整数
孩子们会吃的糖果总数 尽可能多地吃,所有孩子都吃相同的食物。
代码
function candies(n, m) {
if ((n > 10 || n < 1) || (m > 100 || m < 2)) {
return 0;
} else if (n > m) {
return 0;
} else if (n === m) {
return m;
} else if (n < m) {
var candyKids = Math.round(m / n);
return candyKids * n;
};
};
&#13;
答案 0 :(得分:1)
以下是一些代码失败的测试用例:
Math.round
错误在哪里?
您正在使用Math.floor
代替candies( 2, 3 )
,这意味着您将在孩子之间划分后将部分糖果大于一半,所以对于m/n = 1.5
,您确定每个孩子都是2
个糖果,然后你围绕它并为每个孩子分配1
个糖果,但这会产生比你开始时更多的糖果。在这种情况下,你需要改变地板(总是将部分糖果倒在地上)并且只给每个孩子提供def log(args: Array[Double]){
var x = Array.fill(20){math.random}
if(x < 0.000001){ // error: value < is not a member of Array[Double]
x == 0.000001}
else{scala.math.log(x)} // error: type mismatch, it found Array[Double], required: double
}
糖果。