Codeforces Round 435 (Div. 2) |
---|
Закончено |
Махмуд и Ехаб проходят третье испытание Доктора Зло. Как вы уже знаете, Доктор любит множества. На этот раз он не покажет Махмуду и Ехабу ни одного множества из его обширной коллекции, но попросит их сделать новое множество, чтобы её пополнить.
У Доктора Зло есть любимое злое число x. Он просит Махмуда и Ехаба найти множество из n различных неотрицательных целых чисел такое, что побитовый xor чисел в нём равен x. Доктор Зло не любит большие числа, поэтому он хочет, чтобы все числа в множестве были не больше, чем 106.
В единственной строке содержатся два целых числа n и x (1 ≤ n ≤ 105, 0 ≤ x ≤ 105) — число элементов в множестве и требуемый xor, соответственно.
Если таких множеств не существует, выведите "NO" (без кавычек).
Иначе выведите на первой строке "YES" (без кавычек) а на второй строке n целых неотрицательных различных чисел — элементы множества в любом порядке.
Если решений несколько, выведите любое.
5 5
YES
1 2 4 5 7
3 6
YES
1 2 5
Вы можете узнать больше об операции побитовый xor здесь: https://ru.wikipedia.org/wiki/Сложение_по_модулю_2
В первом тестовом примере . Во втором тестовом примере .
Название |
---|