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