字串 1309 解碼字母到整數對映

2021-10-18 19:17:17 字數 2150 閱讀 9636

【題目】

給你乙個字串 s,它由數字(『0』 - 『9』)和 『#』 組成。我們希望按下述規則將 s 對映為一些小寫英文本元:

字元(『a』 - 『i』)分別用(『1』 - 『9』)表示。

字元(『j』 - 『z』)分別用(『10#』 - 『26#』)表示。

返回對映之後形成的新字串。

題目資料保證對映始終唯一。

【示例 1】

輸入:s = 「10#11#12」

輸出:「jkab」

解釋:「j」 -> 「10#」 , 「k」 -> 「11#」 , 「a」 -> 「1」 , 「b」 -> 「2」.

【示例 2】

輸入:s = 「1326#」

輸出:「acz」

【示例 3】

輸入:s = 「25#」

輸出:「y」

【示例 4】

輸入:s = 「12345678910#11#12#13#14#15#16#17#18#19#20#21#22#23#24#25#26#」

輸出:「abcdefghijklmnopqrstuvwxyz」

【提示】

1 <= s.length <= 1000

s[i] 只包含數字(『0』-『9』)和 『#』 字元。

s 是對映始終存在的有效字串。

【**】

【c++】

執行用時:

0 ms, 在所有 c++ 提交中擊敗了100.00%的使用者

記憶體消耗:

6.2 mb, 在所有 c++ 提交中擊敗了86.38%的使用者

class

solution

;int pre=

0,pos=

1,flag=

(s[s.

size()

-1]==

'#')

; string tempstr=

"",rs="";

while

(pos!=-1

)if(presize()

)for

(int i=

0;isize()

;i++

) rs+

=strlist[tempstr[i]

-'0'];

return rs;}}

;

【python】

class

solution

:def

freqalphabets

(self, s:

str)

->

str:

strlist=[''

,'a'

,'b'

,'c'

,'d'

,'e'

,'f'

,'g'

,'h'

,'i'

,'j'

,'k'

,'l'

,'m'

,'n'

,'o'

,'p'

,'q'

,'r'

,'s'

,'t'

,'u'

,'v'

,'w'

,'x'

,'y'

,'z'

] rs=

"" pos=s.find(

"#")

while pos!=-1

: temp=s[

:pos]

while

len(temp)

>2:

rs+=strlist[

int(temp[0]

)]temp=temp[1:

] rs+=strlist[

int(temp)

] s=s[pos+1:

] pos=s.find(

"#")

if s is

notnone

:while

len(s)

>0:

rs+=strlist[

int(s[0]

)]s=s[1:

]return rs

LeetCode 1309 解碼字母到整數對映

leetcode習題答案彙總 題目 給你乙個字串 s,它由數字 0 9 和 組成。我們希望按下述規則將 s 對映為一些小寫英文本元 字元 a i 分別用 1 9 表示。字元 j z 分別用 10 26 表示。返回對映之後形成的新字串。題目資料保證對映始終唯一。示例 1 輸入 s 10 11 12 輸...

1309 解碼字母到整數對映

給你乙個字串 s,它由數字 0 9 和 組成。我們希望按下述規則將 s 對映為一些小寫英文本元 字元 a i 分別用 1 9 表示。字元 j z 分別用 10 26 表示。返回對映之後形成的新字串。題目資料保證對映始終唯一。示例 1 輸入 s 10 11 12 輸出 jkab 解釋 j 10 k 1...

1309 解碼字母到整數對映

給你乙個字串 s,它由數字 0 9 和 組成。我們希望按下述規則將 s 對映為一些小寫英文本元 字元 a i 分別用 1 9 表示。字元 j z 分別用 10 26 表示。返回對映之後形成的新字串。題目資料保證對映始終唯一。示例 1 輸入 s 10 11 12 輸出 jkab 解釋 j 10 k 1...