Здраствуйте, подскажите пожалуйста как можно решить задачи 322. The Great Union и задачу 325. Palindrome.
Заранее спасибо).
№ | Пользователь | Рейтинг |
---|---|---|
1 | tourist | 3880 |
2 | jiangly | 3669 |
3 | ecnerwala | 3654 |
4 | Benq | 3627 |
5 | orzdevinwang | 3612 |
6 | Geothermal | 3569 |
6 | cnnfls_csy | 3569 |
8 | jqdai0815 | 3532 |
9 | Radewoosh | 3522 |
10 | gyh20 | 3447 |
Страны | Города | Организации | Всё → |
№ | Пользователь | Вклад |
---|---|---|
1 | awoo | 161 |
2 | maomao90 | 160 |
3 | adamant | 157 |
4 | maroonrk | 154 |
5 | -is-this-fft- | 148 |
5 | atcoder_official | 148 |
5 | SecondThread | 148 |
8 | Petr | 147 |
9 | TheScrasse | 145 |
9 | nor | 145 |
Здраствуйте, подскажите пожалуйста как можно решить задачи 322. The Great Union и задачу 325. Palindrome.
Заранее спасибо).
Название |
---|
На 325 у меня есть довольно мутная идея...
Идея такая: разобьем буквы на "левые" и "правые" ("центральную" игнорируем). На каждом шаге мы должны выбрать, какие буквы мы поставим на края палиндрома. Очевидно, из одинаковых букв мы будем выбирать самую левую для "левой" буквы и самую правую для "правой". Выбирать будем жадно, оптимизируя следующую функцию: количество свапов для "левой" буквы минус количество "левых" букв справа от нее плюс количество свапов для "правой" буквы минус количество "правых" букв слева от нее.
P.S. Решение я еще не написал, но у меня в голове есть набросок доказательства.
**UPD.** Вопрос к знающим: как реализовать вышеописанную байду без применения дерамиды / дерева отрезков / вообще каких-либо деревьев?Уже реализовал.мхм )) я идею вроде твоего пробовала, но ВА8. возможно я где-то в коде ошибься. СПАСИБО огромное )
Решение по описанию выше с Фенвиком и одной хитрой оптимизацией зашло за 887мс.
UPD. Без Фенвика — 676мс.
322 казалось бы просто реализация. Находим дорогу, которой нет в первой стране, но есть во второй. Добавляем ее в первую страну. В результате получается цикл. В нем точно есть дорога, которой нет во второй стране. Удаляем ее. Так до тех пор, пока деревья не совпадут.
Ой да вроде очевидно ) огромное спасибо
В палиндроме жадность + фенвик же. http://pastie.org/4395924 мой старый код
sf