สมมติว่าเรามีตัวเลข n เราต้องตรวจสอบว่าตัวประกอบเฉพาะของมันคือ 2, 3 หรือ 5 เท่านั้นหรือไม่
ดังนั้น หากอินพุตเท่ากับ n =18 ผลลัพธ์จะเป็น True เนื่องจากตัวประกอบเฉพาะของ 18 คือ 2 และ 3
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- ถ้า n <0 แล้ว
- คืนค่าเท็จ
- factor :=รายการที่มีองค์ประกอบ [2,3,5]
- สำหรับปัจจัย i แต่ละตัว ทำ
- ในขณะที่ n mod i เหมือนกับ 0, do
- n :=n / i
- ในขณะที่ n mod i เหมือนกับ 0, do
- คืนค่า จริง เมื่อ n เท่ากับ 1 มิฉะนั้น เท็จ
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
class Solution: def solve(self, n): if n < 0: return False factor = [2,3,5] for i in factor: while n%i ==0: n/=i return n==1 ob = Solution() print(ob.solve(18))
อินพุต
18
ผลลัพธ์
True