Потрійний XOR
Обмеження: 2 сек., 512 МіБ
Вам дані два натуральні числа \(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\).
Вхідні дані
Єдиний рядок вхідних даних містить два натуральні числа \(m, n\).
Вихідні дані
У першому рядку виведіть число \(k\) — максимальну кількість чисел, яку можна обрати, задовольняючи умову задачі.
У другому рядку виведіть \(k\) попарно різних цілих чисел \(a_1, a_2, \ldots, a_k\), \(m \leq a_i \leq n\). Вони мають задовольняти умові задачі.
Якщо існує кілька різних способів обрати максимальну можливу кількість чисел, знайдіть будь-який.
Обмеження
\(1 \leq m < n \leq 2\cdot 10^5\).
Приклади
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
1 7 | 4 1 3 5 7 |
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
2024 2025 | 2 2025 2024 |
Примітки
У першому прикладі можна показати, що вибрати \(5\) чисел з інтервалу \([1, 7]\) таким чином не можна.
У другому прикладі серед \([2024, 2025]\) нема трьох різних чисел, тому умова виконується автоматично.
Надіслати розв'язок
Element Type | Створено | Хто | Задача | Компілятор | Результат | Час (сек.) | Пам'ять (МіБ) | № | Дії |
---|
Element Type | Створено | Хто | Задача | Компілятор | Результат | Час (сек.) | Пам'ять (МіБ) | № | Дії |
---|