880 索引處的解碼字串

2021-08-28 03:44:55 字數 1174 閱讀 1407

給定乙個編碼字串s。為了找出解碼字串並將其寫入磁帶,從編碼字串中每次讀取乙個字元,並採取以下步驟:

現在,對於給定的編碼字串s和索引k,查詢並返回解碼字串中的第k個字母。

示例 1:

輸入:s = "leet2code3", k = 10輸出:"o"解釋:解碼後的字串為 "leetleetcodeleetleetcodeleetleetcode"。

字串中的第 10 個字母是 "o"。

示例 2:

輸入:s = "ha22", k = 5輸出:"h"解釋:解碼後的字串為 "hahahaha"。第 5 個字母是 "h"。
示例 3:

輸入:s = "a2345678999999999999999", k = 1輸出:"a"解釋:解碼後的字串為 "a" 重複 8301530446056247680 次。第 1 個字母是 "a"。

2 <= s.length <= 100s只包含小寫字母與數字29

s以字母開頭。

1 <= k <= 10^9解碼後的字串保證少於2^63個字母。

思路:利用題目特性將k縮小。

如leet2ef2e

2 ,4

2,10

若是6,則6-4=2

若是11,則11-10=1

class solution 

//cout<}

for(int i=0;iint i=k;

string f;

f+=s[i-1];

return f;

}};

880 索引處的解碼字串

給定乙個編碼字串s。為了找出解碼字串並將其寫入磁帶,從編碼字串中每次讀取乙個字元,並採取以下步驟 現在,對於給定的編碼字串s和索引k,查詢並返回解碼字串中的第k個字母。示例1 輸入 s leet2code3 k 10 輸出 o 解釋 解碼後的字串為 leetleetcodeleetleetcodel...

880 索引處的解碼字串

給定乙個編碼字串 s。為了找出解碼字串並將其寫入磁帶,從編碼字串中每次讀取乙個字元,並採取以下步驟 如果所讀的字元是字母,則將該字母寫在磁帶上。如果所讀的字元是數字 例如 d 則整個當前磁帶總共會被重複寫 d 1 次。現在,對於給定的編碼字串 s 和索引 k,查詢並返回解碼字串中的第 k 個字母。示...

880 索引處的解碼字串

給定乙個編碼字串s。為了找出解碼字串並將其寫入磁帶,從編碼字串中每次讀取乙個字元,並採取以下步驟 現在,對於給定的編碼字串s和索引k,查詢並返回解碼字串中的第k個字母。示例 1 輸入 s leet2code3 k 10輸出 o 解釋 解碼後的字串為 leetleetcodeleetleetcodel...