根据问题,我们给出了一个数组 N 的3个元素,让 [a,b,c] 给出a> 0,b> 0,c> 0 。我们必须按照给定的规则将数组 X = [0,0,0] 设为N.增加X的规则由
给出每次你可以将X的任意两个值递增1例如:[0,1,1](或)[1,0,1]
不允许在X中一次只增加一个值或三个值
例如:
1) given N=[6,6,6]
步骤进行:
[0,1,1] -> [0,2,2] -> [0,3,3] -> [1,4,3] -> [2,5,3] -> [3,6,3] -> [4,6,4] ->[5,6,5] -> [6,6,6]
步数为9
2) given N=[6,6,7]
步骤进行:
[0,1,1] -> [0,2,2] -> [0,3,3] -> [1,4,3] -> [2,5,3] -> [3,6,3] -> [4,6,4] ->[5,6,5] -> [6,6,6].
从这里我们不能增加数组,因为它违反了规则。 difference [6,6,7] and [6,6,6] is 1 . so [6,6,6]
是给定N
3) given N=[0,0,7]
我们不能增加X
的任何两个值。所以答案是[0,0,0] for [0,0,7]
现在有任何方法或任何直接公式以有效的方式解决这个问题。提前致谢 。对不起我的不良解释和头衔
答案 0 :(得分:4)
提示:您希望像onClickFunction(itemParam) {
console.log("this is itemParam", itemParam);
var x = itemParam.requested_filepath;
this.x = itemParam.requested_filepath;
}
一样触及(a,b,c)
。
请将此因素纳入等式
(6,6,6)
x(1,1,0) + y(1,0,1) + z(0,1,1) = (a,b,c)
是应用x
的次数,(1,1,0)
和y
的类似情况。因此
z
给
x + y = a
x + z = b
y + z = c
且x = (a + b - c) / 2
y = (c - b + a) / 2
z = (b - a + c) / 2
,x
和y
必须全部为> = 0和整数。
结果是z
,x
和y
的总和。
这样做的计划就在你身边。提示:
z
,a
和b
(请参阅c
和printf
)scanf
,x
和y
的值z
并将结果显示为解决方案