CSES - All Subarray Xors | Tất Cả XOR Của Đoạn Con

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 2000 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Cho một mảng gồm \(n\) số nguyên, nhiệm vụ của bạn là tìm tất cả các số nguyên có thể là tổng xor của một đoạn con nào đó.

Input

Dòng đầu tiên chứa một số nguyên \(n\): kích thước của mảng.

Dòng tiếp theo chứa \(n\) số nguyên \(x_1,x_2,\dots,x_n\): các phần tử của mảng.

Output

Đầu tiên in ra một số nguyên \(k\): số lượng số nguyên phân biệt có thể là tổng xor của một đoạn con nào đó.

Sau đó in ra \(k\) số nguyên: các tổng xor theo thứ tự tăng dần.

Constraints

  • \(1 \le n \le 2 \cdot 10^5\)

  • \(0 \le x_i \le 10^6\)

Example

Test 1

Input
4
5 1 5 9
Output
7
1 4 5 8 9 12 13

Bình luận

Mới nhất
Tải bình luận...

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