发现'x'和'y'之间的线性运算......
这是我的代码:
public class Program {
public static int Puzzle(int x, int y) {
return ( x / y ) * y;
}
}
结果如下:
x y EXPECTED RESULT YOUR RESULT DESCRIPTION
1 1 1 1
2 2 2 2
919 648 1135 648 Mismatch
我无法想象要写什么代码。
答案 0 :(得分:5)
x + (y / 3)
其中x和y是整数类型。你需要考虑为什么整数类型是如此重要。
答案 1 :(得分:1)
对于解决方案,您需要仔细研究单词"线性运算符":这意味着,对于x
和y
,它会返回类似ax + by
的内容,其中a
和b
是常量。所以:
a * 1 + b * 1 = 1
a * 2 + b * 2 = 2 //可能会被删除,因为它与第一行相乘2
a * 919 + b * 648 = 1135
你可以从最后一个乘以648减去第一个相等,得到
a *(919 - 648)= 1135 - 648 => a = 487/271 => b = 1 - a =(271 - 487)/ 271 = -216 / 271
因此,生成的运算符是
f(x,y)= 487/271 * x - 216/271 * y