Codeforces Round 617 (Div. 3) |
---|
Закончено |
Это простая версия задачи. Задачи отличаются друг от друга, но простая версия почти является подзадачей сложной версии. Обратите внимание на то, что ограничения и формат вывода различаются.
Дана строка $$$s$$$, состоящая из $$$n$$$ строчных латинских букв.
Вам нужно раскрасить все её символы в один из двух цветов (каждый символ покрашен ровно в один цвет, одинаковые буквы могут быть покрашены как одним цветом, так и разными, т.е. вам нужно выбрать ровно один цвет для каждого индекса в $$$s$$$).
После покраски вы можете поменять местами два любых соседних символа строки, которые раскрашены в разные цвета. Вы можете применить эту операцию произвольное (возможно, нулевое) количество раз.
Цель — сделать строку отсортированной, т.е. все символы должны быть расположены в алфавитном порядке.
Ваша задача — определить, возможно ли покрасить заданную строку так, что после покраски она может быть отсортирована с помощью какой-либо последовательности шагов. Обратите внимание: вам нужно восстановить только раскраску, но не последовательность шагов.
Первая строка входных данных содержит одно целое число $$$n$$$ ($$$1 \le n \le 200$$$) — длина строки $$$s$$$.
Вторая строка входных данных содержит строку $$$s$$$, состоящую ровно из $$$n$$$ строчных латинских букв.
Если невозможно раскрасить заданную строку так, что после покраски она может быть отсортирована после какой-либо последовательности шагов, выведите «NO» (без кавычек) первой строкой.
В противном случае выведите «YES» первой строкой и любую корректную раскраску второй строкой (раскраской считается строка, состоящая из $$$n$$$ символов, где $$$i$$$-й символ должен быть '0', если $$$i$$$-й символ покрашен в первый цвет и '1' иначе).
9 abacbecfd
YES 001010101
8 aaabbcbb
YES 01011011
7 abcdedc
NO
5 abcde
YES 00000
Название |
---|