这道题的题目描述灰常简单,第一眼看以为是一道十分水的题目;
但是!!!(我仔细一看也没有发现这背后隐藏着可怕的真相~)
下面给出题目描述:
但是!!!没错我又一次用了“但是”这个词;
当我看到数据范围时我几乎就放弃了,只能用暴力来骗分了,仅仅只水到了50分(也知足了)
而更加令人吃惊的在后面:我以为这道题应该会用到我所不能触及的只是,然而,只是一个十分巨大的脑洞!
没错,学长仅仅只是在黑板(白板?)上写下了两个式子,如下:
##
8( 8x + 7 ) + 7 = 64x + 63;
4( 4( 4x + 3 ) + 3 ) + 3 = 64x + 63;
然后再稍微的推导一下就可以得到:
2( 2x + 1 ) + 1 = 4x + 3;
2( 2( 2x + 1 ) + 1 ) + 1 = 8x + 7;
真是令人感到吃惊!这意味着 当我们运行了两次 8x+7 运算时,就相当于运行了三次 4x+3 运算;
那么这道题目就变的简单了许多,我们可以得到结论:4x+3的运算次数必然不会达到3次以上,因为如果有三次 4x+3 运算便可以用两次 8x+7 运算来代替(题目要求用尽可能少的次数来解);
而为了方便一些,我们便统一的用 2x+1 来代替这两种运算!
这就简单了许多,下面就可以上正解的代码了