lz上个月在颓化学竞赛。玩计算器的时候,偶然想到一个游戏,在此放上,以飨读者。
题目描述
今有一计算器,它有且仅有
2
2
2 个按键 GT
和 =
,它们的描述如下:
GT
:将计数器数值输出到屏幕;
=
:将当前输入的表达式的值输出到屏幕,并将结果累加到计数器中。
一开始屏幕显示 1 1 1,且计数器初值为 0 0 0。
求一种方案,可以用最少的按键次数,使屏幕显示 666 666 666。
Solution \text{Solution} Solution
显然,按
666
666
666 次 =
,然后按 GT
即可显示
666
666
666。
a
n
s
=
667
ans=667
ans=667。
考虑每次按下 =
对答案的贡献。显然,按下 =
的次数相同时,显示的数越大,对答案的贡献越大。换句话说,为了对答案产生相同的贡献,显示的数越大,需要按下 =
的次数就越少。
那搞到
333
333
333 以后,按一下 =
就好了呀。
可以呀。
a
n
s
=
333
+
1
(
G
T
)
+
1
(
=
)
+
1
(
G
T
)
=
336
ans=333+1(GT)+1(=)+1(GT)=336
ans=333+1(GT)+1(=)+1(GT)=336。
哎。那,我如果只搞到
222
222
222、
111
111
111,然后多按几下 =
的话,会比你更优啊。
可以啊。
a
n
s
=
111
+
1
(
G
T
)
+
5
(
=
)
+
1
(
G
T
)
=
118
ans=111+1(GT)+5(=)+1(GT)=118
ans=111+1(GT)+5(=)+1(GT)=118。
哎,哎,哎,
111
111
111 好像可以分解哎。那如果我按
37
37
37 个 =
,再……
111
=
37
×
3
111=37\times3
111=37×3。
真聪明。如果你按出
37
37
37,再搞个
18
18
18 出来,那也能凑出
666
666
666。
“emmm…我明白了……”
此处部分请读者自行思考。下面给出答案。
最少次数是 46 46 46 次。其中一种方案是:
- 按
37
37
37 次
=
,GT
,屏幕显示37
; - 按
=
,=
,GT
,再按=
,=
,GT
,屏幕显示333
; - 按
=
,GT
,屏幕显示666
。
那如果要按出
N
N
N 呢?且听下回分解。