Как сделать сокращение от самой длинной общей подпоследовательности к O (nlog n) Самая длинная нарастающая подпоследовательность для проблемы 10635 uva. Мне нужна помощь относительно логики, которая будет применяться для решения проблемы.Как использовать LIS для решения 10635 uva
2
A
ответ
1
Для каждого шага маршрута одного из двух символов (скажем, принцессы) назначьте номер этого шага в последовательности принца.
Первое наблюдение - все шаги, не входящие в последовательность принца, немедленно удаляются - они не могут быть частью общей последовательности ходов.
Теперь у нас есть последовательность чисел, представляющая индекс в последовательности ходов принца. Мы должны выбрать возрастающую подпоследовательность (увеличивающуюся, поскольку мы должны посещать ячейки в том же порядке, что и принц) максимальной длины этой последовательности. Звонок каких-нибудь колоколов?
Надеюсь, это поможет.
Смежные вопросы
- 1. UVa 11860: Как использовать Heap, чтобы решить
- 2. Как использовать Ncalc.Expression для решения для y?
- 3. использовать переменную для решения R.raw.background
- 4. Ошибка компиляции для представления - UVA
- 5. Почему я продолжаю получать WA для этого решения для UVa 10511
- 6. Как использовать JSONP для решения проблемы XSS?
- 7. Как использовать параметр массива char для решения?
- 8. Как использовать JIRA для решения проблем проекта
- 9. Как использовать Ivy для локального решения
- 10. Как использовать RegEx для эффективного решения
- 11. Как использовать динамическое программирование для решения Knapsack
- 12. Как я могу скомпилировать UVA?
- 13. выбрать Lis меню эхо
- 14. Как использовать Foreach принимать решения
- 15. Организация позиционированных LIs
- 16. Свойства Lis CanvasRenderingContext2D
- 17. UVA # 10410 Восстановление дерева
- 18. UVa - Longest Nap
- 19. Медиана программа через uva
- 20. UVa Run в Python
- 21. UVa Contest Табло
- 22. Установка радара UVA
- 23. Предлагаю решения для решения Sympy
- 24. Как расширить Lis до полной ширины DIV
- 25. Формула дерева Math UVA
- 26. UVa 11402 Ошибка выполнения
- 27. Ugly Numbers UVA
- 28. Точное изменение UVA
- 29. UVa-784 Неверный ответ
- 30. UVA 10189 Сапер
Буду благодарен, если вы дадите более точное и четкое определение того, что вы подразумеваете под «назначением числа этого шага в последовательности принца» в первой строке вашего ответа. – whitepearl
Путь каждого символа - это массив, в котором у вас есть ячейка, посещенная на данном шаге. Итак, вы имеете этот массив для принца, и вы проходите через клетки принцессы, и для каждой ячейки, присутствующей в массиве принца, вы назначаете индекс этой ячейки в массиве принца, вы уклоняетесь от клеток, которые не присутствуют в массив князя. Теперь вам нужно сделать LIS на числа, которые вы получили (т. Е. Indecies). Надеюсь, это станет более ясным. –
Если для каждого элемента массива принцессы мы находим соответствующий элемент в матрице принца, это становится алгоритмом O (nm). Что поражает цель использования O (nlog n) LIS для этого вопроса. Я понял, что вы упоминали в своем посте, и даже выполнил то же самое и получил TLE :(Исправьте меня, если я ошибаюсь в любом месте или существует какой-либо другой метод для решения вопроса. – whitepearl