मान लीजिए कि हमारे पास एक संख्या n है, तो हमें यह जांचना होगा कि n को तीन की विशिष्ट शक्तियों के योग के रूप में निरूपित करना संभव है या नहीं। एक पूर्णांक y को तीन की घात कहा जाता है यदि एक पूर्णांक x मौजूद हो जैसे कि y =3^x।
इसलिए, अगर इनपुट n =117 जैसा है, तो आउटपुट सही होगा क्योंकि 117 =3^4 + 3^3 + 3^2 + =81 + 27 + 9.
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
-
मेरे लिए 16 से 0 की सीमा में, 1 से घटाएं, करें
-
अगर n>=3^i , तो
-
n :=n - 3^i
-
-
-
अगर n> 0, तो
-
झूठी वापसी
-
-
सही लौटें
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
def solve(n): for i in range(16, -1, -1): if n >= pow(3,i): n -= pow(3,i) if n > 0: return False return True n = 117 print(solve(n))
इनपुट
117
आउटपुट
True