मान लीजिए हमारे पास एक संख्या n है। हमारे पास दो अन्य संख्याएं a और b हैं। हमें यह जांचना है कि क्या हम a और b का उपयोग करके एक संख्या उत्पन्न कर सकते हैं जो n को विभाजित करती है।
तो, यदि इनपुट n = 115, a = 3, b = 2 है, तो आउटपुट True होगा क्योंकि 115, 23 से विभाज्य है जो 2 और 3 से बना है।
हल करने के चरण
- एक फ़ंक्शन util() परिभाषित करें। यह temp, a, b, n लेगा
- यदि temp > n, तो:
- False लौटाएं
- यदि n, temp से विभाज्य है, तो:
- True लौटाएं
- util(temp * 10 + a, a, b, n) या util(temp * 10 + b, a, b, n) में से कम से कम एक true होने पर true लौटाएं अन्यथा false
- मुख्य विधि से util(a, a, b, n) या util(b, a, b, n) में से कम से कम एक true होने पर true लौटाएं अन्यथा false
उदाहरण
def util(temp, a, b, n):
if temp > n:
return False
if n % temp == 0:
return True
return util(temp * 10 + a, a, b, n) or util(temp * 10 + b, a, b, n)
def solve(n, a, b):
return util(a, a, b, n) or util(b, a, b, n)
n = 115
a = 3
b = 2
print(solve(n, a, b))
इनपुट
115, 2, 3
आउटपुट
True