TLE-oj Cup Round 10 - Tổng and, or, xor

Xem PDF

Nộp bài

Điểm: 1300 (thành phần)
Thời gian: 1.0s
Bộ nhớ: 1G
Input: SUMAOX.inp
Output: SUMAOX.out

Tác giả:
Dạng bài

Cho dãy a ban đầu không có phần tử nào và q truy vấn, mỗi truy vấn thuộc một trong năm dạng sau:

  • + m: Thêm một phần tử có giá trị m vào a.
  • & m: Thực hiện phép AND cho m với tất cả các phần tử trong dãy.
  • | m: Thực hiện phép OR cho m với tất cả các phần tử trong dãy.
  • ^ m: Thực hiện phép XOR cho m với tất cả các phần tử trong dãy.

Các bạn có thể xem về các phép thao tác bit tại đây.

Sau khi thực hiện q thao tác bit, các bạn cần in ra tổng các phần tử của dãy.

Input, Output và Subtasks

Input: (SUMAOX.inp)
  • Dòng đầu tiên gồm số nguyên dương q (1 \le q \le 10^6).
  • q dòng tiếp theo, mỗi dòng là một truy vấn thuộc một trong bốn loại như ở trên. (0 \le m \le 10^6).
Output: (SUMAOX.out)
  • In ra kết quả bài toán.
Subtasks
  • Subtask 1 (30\%): q \le 10^4.
  • Subtask 2 (30\%): m \le 1 cho mọi truy vấn.
  • Subtask 3 (20\%): m \le 4 cho mọi truy vấn.
  • Subtask 4 (20\%): Không có giới hạn gì thêm.

Sample

Input (SUMAOX.inp)
5

+ 1
+ 2
& 1
^ 3
+ 4
Output (SUMAOX.out)
9
Note
  • Dãy ban đầu: ().
  • Sau thao tác 1: (1).
  • Sau thao tác 2: (1, 2).
  • Sau thao tác 3: (1, 0).
  • Sau thao tác 4: (2, 3).
  • Sau thao tác 5: (2, 3, 4).

Bình luận

Không có bình luận nào.