สมมติว่าเรามีตัวเลข n เราต้องหาค่าบวกน้อยที่สุด x โดยที่ x ประกอบด้วยตัวเลขสองหลักคือ 9 และ 0 และ x คือผลคูณของ n
ดังนั้น หากอินพุตเท่ากับ n =26 เอาต์พุตจะเป็น 90090
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- ม :=9
- x :=1
- ในขณะที่ m ไม่หารด้วย n ลงตัว ให้ทำ
- x :=x + 1
- m :=แทนที่ 1s ทั้งหมดด้วย 9s ในรูปแบบไบนารีของ x
- คืนค่า m เป็นจำนวนเต็ม
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
def solve(n): m = 9 x = 1 while m % n != 0: x += 1 m = int(bin(x)[2:].replace('1','9')) return m n = 26 print(solve(n))
อินพุต
26
ผลลัพธ์
90090