Computer >> Máy Tính >  >> Lập trình >> Python

Chương trình thực hiện thao tác XOR trong một mảng bằng Python

Giả sử chúng ta có một số nguyên n và một số nguyên khác bắt đầu. Chúng ta phải tạo một mảng gọi là nums trong đó nums [i] =start + 2 * i (tôi bắt đầu từ 0) và n là kích thước của nums. Sau đó, tìm XOR theo từng bit của tất cả các phần tử của nums.

Vì vậy, nếu đầu vào là n =6, start =2, thì đầu ra sẽ là 14 vì mảng sẽ giống như [2 + 2 * 0, 2 + 2 * 1, ... 2 + 2 * 5] =[2,4,6,8,10,12], thì XOR của mỗi phần tử hiện diện trong mảng là 14.

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • count:=start

  • while n-1> 0, do

    • count:=count XOR 2 + start

    • n:=n - 1

    • start:=start + 2

  • số lần trả lại

Ví dụ (Python)

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

def solve(n, start):
   count = start
   while n-1 > 0:
      count ^= 2 + start
      n -= 1
      start += 2
   return count

n = 6
start = 2
print(solve(n, start))

Đầu vào

6, 2

Đầu ra

14