কম্পিউটার টিউটোরিয়াল

Python-এ দুটি সংখ্যা কেবল এক বিট পজিশনে আলাদা কিনা যাচাই করা


মান লেন, আমাদের কাছে দুটি সংখ্যা x এবং y আছে। আমাদের যাচাই করতে হবে এই দুটি সংখ্যা কেবল এক বিট পজিশনে আলাদা কিনা।

যেমন, ইনপুট হলে x = 25 y = 17, তবে আউটপুট হবে True কারণ x = 11001 বাইনারি এবং y = 10001। কেবল এক বিট পজিশন ভিন্ন।

এটি সমাধান করতে আমরা নিচের ধাপগুলো অনুসরণ করব:

  • z = x XOR y
  • যদি z-তে সেট বিটের সংখ্যা ১ হয়, তবে True রিটার্ন করুন।
  • False রিটার্ন করুন।

উদাহরণ কোড

def bit_count(n):
    count = 0
    while n:
        count += n & 1
        n >>= 1
    return count

def solve(x, y):
    return bit_count(x ^ y) == 1

x = 25
y = 17
print(solve(x, y))

ইনপুট

25,17

আউটপুট

True

  1. পাইথনে দুটি সংখ্যার ভাগসঙ্ক্যের যোগফল সমান কিনা

  2. পাইথনে দুটি সংখ্যার বাইনারি রিপ্রেজেন্টেশন অ্যানাগ্রাম (Anagram) কিনা

  3. পাইথনে কোনো সংখ্যা ২-এর ঘাত কিনা চেক করা

  4. Python-এ স্ট্রিং শুধু সংখ্যা ধারণ করছে কিনা যাচাই করা