如何在限定的按鍵次數下輸入最多的字元?

時間 2021-05-31 21:34:36

1樓:

a,ctrl+H,a, tab,aaaaaaaaaaaaaaaa,按住回車不放用掉剩下的次數。

神威太湖之光也扛不住

懶得優化,反正比上面幾個方法多

2樓:

有人把這個問題推廣了一下寫了篇文章:

Solution Sequences for the Keyboard Problem and its Generalizations

A178715 - OEIS

3樓:yamagl

from

collections

import

namedtuple

import

sysdefaa(

n):dp=

[0,1

,2]record

=namedtuple

('record',[

'i',

'max_char'

,'prev'

])foriin

range(3

,n):plus_one

=record(i

,dp[i

-1]+

1,i-

1)back

=max

([(dp[j

]*(i

-j-1

),j)forjin

range(i

-2)],key

=lambdan:

n[0])

copy_paste

=record(i

,*back

)curr_max

=max

(plus_one

,copy_paste

,key

=lambdan:

n.max_char)dp

.(curr_max

.max_char

)print

(curr_max)if

__name__

=='__main__':aa

(int

(sys

.argv[1

]))LSY-MBP:~ hahaha$ python3 aa.py 101

record(i=3, max_char=3, prev=2)

record(i=4, max_char=4, prev=3)

record(i=5, max_char=5, prev=4)

record(i=6, max_char=6, prev=5)

record(i=7, max_char=9, prev=3)

record(i=8, max_char=12, prev=3)

record(i=9, max_char=16, prev=4)

record(i=10, max_char=20, prev=4)

record(i=11, max_char=27, prev=7)

record(i=12, max_char=36, prev=7)

record(i=13, max_char=48, prev=8)

record(i=14, max_char=64, prev=9)

record(i=15, max_char=81, prev=11)

record(i=16, max_char=108, prev=11)

record(i=17, max_char=144, prev=12)

record(i=18, max_char=192, prev=13)

record(i=19, max_char=256, prev=14)

record(i=20, max_char=324, prev=15)

...record(i=98, max_char=824633720832, prev=93)

record(i=99, max_char=1099511627776, prev=94)

record(i=100, max_char=1391569403904, prev=95)

感覺每次都要回溯好蠢

如何在微軟日語輸入法假名模式下輸入濁音?

亜恵恵阿由 JIS鍵盤的 舞羅邪亜 已經上圖說得很明白了。說一下US鍵盤的情況。左方括號鍵,即P右邊的那個鍵,就是濁音 打 就是按 再按 右方括號鍵,即上述鍵再右邊乙個的鍵,是半濁音 打 就是按 再按 US鍵盤缺鍵的 和 在微軟輸入法中分別有解決方案。US鍵盤沒有JIS鍵盤上等同於 的鍵,即JIS鍵...

如何在Python下實現讓使用者輸入行列名稱自動定位單元格提取資料?

謀殺電視機 問題1和2都是屬於定位取資料的問題嘛,這方面支援的比較好的包當是pandas了,後面我就以pd簡稱來舉例了 首先利用pd.read excel方法讀取excel,這裡可能要注意行列索引的問題,讀取後,你就能得到乙個dataframe的物件,可以通過ix方法定位資料。問題3就是資料聚合的問...

C 語言如何在不重新執行的情況下連續輸入數字進行判斷?

印之 大概就是可以簡單地來個迴圈如之前有個人回答的那樣while 給個條件然後scanf輸入等 大概就這麼個意思後面也有高階點的吧但我忘了 賽象鼻 寫好了但是一輸入其他自符就會一直迴圈到崩潰煩惱 include int main int age 0 while age 886 printf 請輸入您...