Утка не любит условия
Великая Утка обожает задачи, но предпочитает краткие условия. Поэтому она попросила меня сделать условие как можно короче.
Вам дан массив a
длиной n
и число k
. Каждый элемент массива равен 1, −1 или 0. Ваша задача — заменить все нули на −1 или 1 так, чтобы сумма элементов массива была положительной и делилась нацело на k.
Формат входных данных
Первая строка содержит два целых числа n и k (1 ≤ n, k ≤ 2 · 10^5
) — количество чисел и число, на которое должна делиться сумма.
Вторая строка содержит n целых чисел a[1]
, a[2]
, ..., a[n]
(−1 ≤ a[i]
≤ 1) — элементы массива.
Формат выходных данных
Если возможно заменить нули на −1 или 1 так, чтобы сумма элементов массива была положительной и делилась на k
, выведите в первой строке слово «Yes» (без кавычек), а во второй — n целых чисел, представляющих новый массив. Если существует несколько решений, выведите любое из них.
Если это невозможно, выведите в одной строке слово «No» (без кавычек).