मान लीजिए हमारे पास एक संख्या n है। हमें जांचना है कि क्या संख्या 3 की घात है या नहीं। यदि संख्या n = 27 जैसी है, जो 3 की घात है, तो परिणाम true होगा, यदि n = 15, तो false होगा।
हल करने के चरण
- हम इसे हल करने के लिए लघुगणक का उपयोग करेंगे
- यदि [log10(n) / log10(3)] mod 1 == 0, तो यह तीन की घात होगी, अन्यथा नहीं
उदाहरण
बेहतर समझ के लिए निम्नलिखित कार्यान्वयन देखें:
class Solution(object):
def isPowerOfThree(self, n):
"""
:type n: int
:rtype: bool
"""
if not n or n<0:
return False
return (math.log10(n)/ math.log10(3)) % 1 == 0
ob1 = Solution()
print(ob1.isPowerOfThree(27))
print(ob1.isPowerOfThree(15))
print(ob1.isPowerOfThree(9)
इनपुट
27 15 9
आउटपुट
true false true