मान लीजिए कि हमारे पास दो संख्याएँ x और n हैं। हमें यह जांचना है कि x, 2^n से विभाज्य है या नहीं, बिना अंकगणितीय ऑपरेटरों का उपयोग किए।
इसलिए, यदि इनपुट x =32 n =5 जैसा है, तो आउटपुट 32 =2^5 के रूप में सही होगा।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- यदि x और (2^n - 1) 0 है, तो
- सही लौटें
- झूठी वापसी
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
def solve (x, n): if (x & ((1 << n) - 1)) == 0: return True return False x = 32 n = 5 print(solve(x, n))
इनपुट
32, 5
आउटपुट
True