สมมติว่าเรามีสตริง s ซึ่งเป็นสตริงที่เข้ารหัสแบบ Run-Length เราต้องหาสตริงต้นฉบับที่ถอดรหัสแล้ว ตัวอย่างเช่น สตริง "BBBBAAADDCBB" จะถูกเข้ารหัสเป็น "4B3A2D1C2B"
ตัวอย่าง
หากอินพุตคือ s = "4B3A2D1C2B" ผลลัพธ์จะเป็น "BBBBAAADDCBB"
ขั้นตอนการแก้ปัญหา
output:= สตริงว่างnum:= สตริงว่าง- สำหรับแต่ละตัวอักษร
iในs:- ถ้า
iเป็นตัวอักษร:output:=output + i * (num เป็นตัวเลข)num:= สตริงว่าง
- อื่นๆ:
num:=num + i
- ถ้า
- คืนค่า
output
การใช้งาน
class Solution:
def solve(self, s):
output = ""
num = ""
for i in s:
if i.isalpha():
output += i * int(num)
num = ""
else:
num += i
return output
ob = Solution()
print(ob.solve("4B3A2D1C2B"))
อินพุต
"4B3A2D1C2B"
เอาต์พุต
BBBBAAADDCBB