我有一个很长的等式,我想简化,但我没有想法如何。
4 *(地板((15-11 * X-地板(X / 19)+地板(X%) - 地板(X%/ 4)-floor((地板(X%)+ 1-地板((地板(X%)+ 8)/ 25))/ 3))/ 30)-floor((15-11 * X-地板(X / 19))/ 30))+地板((地板((地板(X %)+ 1-地板((地板(X%)+ 8)/ 25))/ 3)+ 3 + 3 * X-地板(X / 4)+地板(X / 19)+ 2 *地板(0.5-三十零分之十一* X-地板(X / 19)/ 30 +(地板(X%) - 地板(X%/ 4)-floor((地板(X%)+ 1-地板((地板(X%)+ 8)/ 25))/ 3))/ 30))/ 7)-floor((5 + 3 * X-地板(X / 4)+地板(X / 19)+ 2 *地板(0.5-11 / 30 * X-地板(X / 19)/ 30))/ 7)+地板((13-54 / 11 * X-2 *地板(X / 4)-8 / 11 *地板(X / 19)+地板( (地板(X%)+ 1-地板((地板(X%)+ 8)/ 25))/ 3)+地板(X%) - 3 *地板(X%/ 4)-26 *地板((15 -11 * X-地板(X / 19)+地板(X%) - 地板(X%/ 4)-floor((地板(X%)+ 1-地板((地板(X%)+ 8)/ 25 ))/ 3))/ 30)* -14地板((1楼+地板((地板(X%)+ 1-地板((地板(X%)+ 8)/ 25))/ 3)+ 3 * X -floor(X / 4)+地板(X / 19)+ 2 *地板((15-11 * X-地板(X / 19)+地板(X%) - 地板(X%/ 4)-floor((地板(X%)+ 1-地板((地板(X%)+ 8)/ 25))/ 3))/ 30))/ 7))/ 41)
我只想使用地板功能。
x这里是正整数(x> 1582),x%是x除以100.
提前谢谢
答案 0 :(得分:0)
您无法简化分数x和y的floor(x+y)
,但如果您知道x是整数,那么floor(x+y) = x + floor(y)
您还可以简化整数floor(floor(x/a)/b)
实际上,让我们用x = b * (a*y+c) + d
和c < a
d < b
的欧几里德除法
我们有x = a*b * y + (b*c+d)
在整数上我们可以写c <= a - 1
,因此b*c <= (a-1)*b
。
然后使用其他不等式d < b
=&gt; b*c+d < (a-1)*b+b
,b*c+d < a*b
。
因此floor(floor(x/a)/b) = floor( x/(a*b) )
超过正整数。
你可以做的是写下表达式的界限,如:
floor(a/c)+floor(b/c) <= floor((a+b)/c) <= floor(a/b)+floor(b/c)+1
然后在边界上应用简化规则