leetcode 1417 重新格式化字串

2021-10-07 17:54:06 字數 1545 閱讀 3870

1417. 重新格式化字串

難度簡單4收藏分享切換為英文關注反饋

給你乙個混合了數字和字母的字串s,其中的字母均為小寫英文本母。

請你將該字串重新格式化,使得任意兩個相鄰字元的型別都不同。也就是說,字母後面應該跟著數字,而數字後面應該跟著字母。

請你返回重新格式化後的字串;如果無法按要求重新格式化,則返回乙個空字串

示例 1:

輸入:s = "a0b1c2"輸出:"0a1b2c"解釋:"0a1b2c" 中任意兩個相鄰字元的型別都不同。 "a0b1c2", "0a1b2c", "0c2a1b" 也是滿足題目要求的答案。
示例 2:

輸入:s = "leetcode"輸出:""解釋:"leetcode" 中只有字母,所以無法滿足重新格式化的條件。
示例 3:

輸入:s = "1229857369"輸出:""解釋:"1229857369" 中只有數字,所以無法滿足重新格式化的條件。
示例 4:

輸入:s = "covid2019"輸出:"c2o0v1i9d"
示例 5:

輸入:s = "ab123"輸出:"1a2b3"
class solution:

def reformat(self, s: str) -> str:

str1=

num1=

for i in range(len(s)):

if s[i].isalpha():

else:

if abs(len(str1)-len(num1))>1:

return ""

str2=''

if len(str1)==len(num1):

for i in range(len(str1)):

str2 += str1[i] + str(num1[i])

elif len(str1)for i in range(len(str1)):

str2 += str(num1[i]) + str1[i]

str2 += str(num1[-1])

else :

for i in range(len(num1)):

str2 += str1[i] + str(num1[i])

str2 += str1[-1]

return str2

LeetCode 1417 重新格式化字串

給你乙個混合了數字和字母的字串 s,其中的字母均為小寫英文本母。請你將該字串重新格式化,使得任意兩個相鄰字元的型別都不同。也就是說,字母後面應該跟著數字,而數字後面應該跟著字母。請你返回 重新格式化後 的字串 如果無法按要求重新格式化,則返回乙個 空字串 示例 1 輸入 s a0b1c2 輸出 0a...

leetcode演算法 1417 重新格式化字串

所有題目源 git位址 題目給你乙個混合了數字和字母的字串 s,其中的字母均為小寫英文本母。請你將該字串重新格式化,使得任意兩個相鄰字元的型別都不同。也就是說,字母後面應該跟著數字,而數字後面應該跟著字母。請你返回 重新格式化後 的字串 如果無法按要求重新格式化,則返回乙個 空字串 示例 1 輸入 ...

LeetCode刷題之1417 重新格式化字串

我不知道將去向何方,但我已在路上!示例 1 輸入 s a0b1c2 輸出 0a1b2c 解釋 0a1b2c 中任意兩個相鄰字元的型別都不同。a0b1c2 0a1b2c 0c2a1b 也是滿足題目要求的答案。示例 2 輸入 s leetcode 輸出 解釋 leetcode 中只有字母,所以無法滿足重...