Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมเข้ารหัสสตริงโดยใช้ Vertical Cipher ใน Python


สมมติว่าเรามีสตริง s และตัวเลข n เราต้องจัดเรียง s ใหม่เป็น n แถว เพื่อเลือก s ในแนวตั้ง (จากบนลงล่าง ซ้ายไปขวา)

ดังนั้น หากอินพุตเป็น s ="ilovepythonprogramming" n =5 เอาต์พุตจะเป็น ['ipnrn', 'lypag', 'otrm', 'vhom', 'eogi']

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • L :=รายการว่าง
  • สำหรับฉันในช่วง 0 ถึง n - 1:
    • แทรกสตริงโดยใช้อักขระที่ n แต่ละตัวที่เริ่มต้นจาก i และแทรกลงใน L
  • คืนแอล

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

ตัวอย่าง

class Solution:
   def solve(self, s, n):
      return [s[i::n] for i in range(n)]
ob = Solution()
s = "ilovepythonprogramming"
n = 5
print(ob.solve(s, n))

อินพุต

"ilovepythonprogramming", 5

ผลลัพธ์

['ipnrn', 'lypag', 'otrm', 'vhom', 'eogi']