Codeforces Round 268 (Div. 1) |
---|
Закончено |
У Little X есть n различных целых чисел: p1, p2, ..., pn. Он хочет так разделить все числа на два множества, A и B, чтобы выполнялись условия:
Помогите Little X разделить числа на два множества или определите, что это невозможно.
В первой строке записано три целых числа через пробел n, a, b (1 ≤ n ≤ 105; 1 ≤ a, b ≤ 109). В следующей строке записано n различных целых чисел через пробел p1, p2, ..., pn (1 ≤ pi ≤ 109).
Если способ разделения чисел на два множества существует, то выведите "YES" в первой строке. Затем выведите n целых чисел: b1, b2, ..., bn (bi равняется либо 0, либо 1), описывающих разделение. Если bi равняется 0, то pi принадлежит множеству A, в противном случае оно принадлежит множеству B.
Если это невозможно, выведите "NO" (без кавычек).
4 5 9
2 3 4 5
YES
0 0 1 1
3 3 4
1 2 4
NO
Допустимо следующее разбиение: все числа содержатся в одном множестве, а второе множество пустое.
Название |
---|