Xây Dựng Dãy
Đề bài
Mô tả
Cho hai số nguyên và . Hãy chọn một số nguyên dương và xây dựng một dãy gồm số nguyên không âm thỏa mãn đồng thời ba điều kiện:
Ở đây là số bit trong biểu diễn nhị phân của (chẳng hạn và ), còn là phép XOR theo bit.
Nếu không tồn tại dãy nào như vậy, hãy báo là không thể.
Bạn phải trả lời bộ dữ liệu độc lập.
Dữ liệu vào
- Dòng đầu chứa số nguyên .
- Mỗi dòng trong dòng tiếp theo chứa hai số nguyên và của một bộ dữ liệu.
Dữ liệu ra
Với mỗi bộ dữ liệu, in kết quả theo thứ tự:
- Nếu không tồn tại dãy thỏa mãn, in một dòng chứa .
- Ngược lại, dòng thứ nhất in số nguyên là độ dài dãy, dòng thứ hai in số nguyên cách nhau bởi dấu cách.
Có thể có nhiều dãy hợp lệ; in ra dãy nào cũng được.
Ràng buộc
- Các cặp trong cùng một bộ dữ liệu vào đôi một khác nhau.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 3 2 1 33 5 10 5 |
1 2 6 1 15 1 2 7 7 -1 |
Bộ 1: dãy có tổng và XOR popcount là . Bộ 2: tổng , XOR popcount là ; các dãy khác như cũng được chấp nhận. Bộ 3: không có dãy nào có tổng mà XOR popcount bằng . |
| 4 1 1 4 2 7 3 19 7 |
1 1 -1 4 1 3 1 2 3 1 3 15 |
Bộ 1: dãy . Bộ 2: mọi dãy có tổng đều cho XOR popcount khác . Bộ 3: và tổng bằng . Bộ 4: đúng bằng tổng nhỏ nhất có thể của một dãy đạt XOR popcount . |
Bình luận