Потрійний XOR
Limits: 2 sec., 512 MiB
Вам дані два натуральні числа \(m<n\). Яку найбільшу кількість попарно різних цілих чисел можна обрати в інтервалі \([m, n]\) так, щоб виконувалась наступна умова:
Серед обраних чисел немає таких трьох різних чисел \(x, y, z\), що \(x \oplus y \oplus z = 0\).
Нагадаємо, що \(\oplus\) позначає
операцiю побiтового виключного АБО. Наприклад, \(13 \oplus 6 = 11\), адже в двiйковому
записi \(13 =\) 1101, а
\(6 =\) 0110, тому їх
\(\oplus\) має бути рiвним
1011 \(= 11\).
Input
Єдиний рядок вхідних даних містить два натуральні числа \(m, n\).
Output
У першому рядку виведіть число \(k\) — максимальну кількість чисел, яку можна обрати, задовольняючи умову задачі.
У другому рядку виведіть \(k\) попарно різних цілих чисел \(a_1, a_2, \ldots, a_k\), \(m \leq a_i \leq n\). Вони мають задовольняти умові задачі.
Якщо існує кілька різних способів обрати максимальну можливу кількість чисел, знайдіть будь-який.
Constraints
\(1 \leq m < n \leq 2\cdot 10^5\).
Samples
| Input (stdin) | Output (stdout) |
|---|---|
| 1 7 | 4 1 3 5 7 |
| Input (stdin) | Output (stdout) |
|---|---|
| 2024 2025 | 2 2025 2024 |
Notes
У першому прикладі можна показати, що вибрати \(5\) чисел з інтервалу \([1, 7]\) таким чином не можна.
У другому прикладі серед \([2024, 2025]\) нема трьох різних чисел, тому умова виконується автоматично.
Submit a solution
| Element Type | Created | Who | Problem | Compiler | Result | Time (sec.) | Memory (MiB) | # | Actions |
|---|
| Element Type | Created | Who | Problem | Compiler | Result | Time (sec.) | Memory (MiB) | # | Actions |
|---|