CSES - K Subset Xors | K Giá Trị XOR Tập 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: 1900 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Bạn được cho một mảng gồm \(n\) số nguyên. Xét các giá trị xor của tất cả \(2^n\) tập con của mảng (bao gồm tập con rỗng có xor bằng không).

Nhiệm vụ của bạn là tìm \(k\) giá trị xor tập con nhỏ nhất.

Input

Dòng đầu tiên chứa hai số nguyên \(n\)\(k\): kích thước của mảng và số lượng giá trị xor tập con cần tìm \(k\).

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

In ra \(k\) số nguyên: \(k\) giá trị xor tập con nhỏ nhất theo thứ tự tăng dần.

Constraints

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

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

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

Example

Test 1

Input
4 9
3 5 14 8
Output
0 0 3 3 5 5 6 6 8

Bình luận

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

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