Tập hợp bất biến qua XOR
Đề bài
Mô tả
Cho tập hợp gồm số nguyên phân biệt. Với một số nguyên dương , ta thay mỗi phần tử bởi ( là phép XOR theo bit), thu được tập hợp .
Hãy tìm số nguyên dương nhỏ nhất sao cho tập hợp thu được trùng đúng với tập hợp ban đầu, tức là . Do đây là tập hợp nên thứ tự các phần tử không quan trọng: và là cùng một tập hợp.
Nếu không tồn tại nào như vậy, hãy in ra . Lưu ý phải dương, nên không được chấp nhận dù nó luôn giữ nguyên tập hợp.
Ví dụ, với và ta thu được ; còn với và thì tập hợp giữ nguyên.
Dữ liệu vào
- Dòng đầu chứa số nguyên là số bộ dữ liệu.
- Mỗi bộ dữ liệu gồm hai dòng: dòng đầu chứa số nguyên là số phần tử của , dòng thứ hai chứa số nguyên phân biệt .
Dữ liệu ra
In ra dòng, dòng thứ là đáp án cho bộ dữ liệu thứ : giá trị nguyên dương nhỏ nhất thỏa mãn, hoặc nếu không tồn tại.
Ràng buộc
- , các trong cùng một bộ dữ liệu là phân biệt
- Tổng trên tất cả các bộ dữ liệu không vượt quá
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 6 4 1 0 2 3 6 10 7 14 8 3 12 2 0 2 3 1 2 3 6 1 4 6 10 11 12 2 0 1023 |
1 4 2 -1 -1 1023 |
Bộ 1: biến thành , đúng tập ban đầu. Bộ 3: cho , còn cho nên đáp án là . Bộ 4 và bộ 5 không có dương nào thỏa mãn. |
| 4 2 0 1023 1 5 2 0 512 4 1 2 4 7 |
1023 -1 512 3 |
Bộ 2 có đúng một phần tử: chỉ khi , mà phải dương nên in . Bộ 4: hoán đổi và . |
Bình luận