Giả sử chúng ta có một số dương n, chúng ta phải tìm rằng chúng ta có thể tạo ra n bằng cách cộng một số bội số không âm của 3 và một số bội số không âm của 7 hay không.
Vì vậy, nếu đầu vào là 13, thì đầu ra sẽ là Đúng, vì 13 có thể được viết là 1 * 7 + 2 * 3 =13
Để giải quyết vấn đề này, chúng ta sẽ làm theo các bước sau -
-
đối với tôi trong phạm vi từ 0 đến n + 1, tăng 7, thực hiện
-
nếu n-i chia hết cho 3 thì
-
trả về True
-
-
-
trả về Sai
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
Ví dụ
class Solution: def solve(self, n): for i in range(0,n+1,7): if (n-i)%3 == 0: return True return False ob = Solution() print(ob.solve(13))
Đầu vào
13
Đầu ra
True