2011-03\stones - (3) [games, DP] линейная динамика 2011-10\incrementator - (3) [trie, hash-table] Hash-table или Бор : Поддерживать величину value[name] 2011-06\minonpath - (3) [LCA] минимиум на пути дерева 2014-07\mincut - (3) [элементарная] Неор граф, n <= 50, найти глобальный разрез (два множества вершин) 2011-05\cyclic - (3) [strings, hashes] найти номер строки в ее суффиксном массиве (решается Z-функцией или Хэшами) 2011-03\choco - (4) [games, grundi] гранди, состояние: [a,b], переход -- разделить по одной из сторон 2011-03\molecule - (4) [flow] Двудольность графа + Максимальный поток 2014-03\kinverse - (4) [rmq, scanline, DP] Посчитать количество k-инверсий, n <= 20 000, k <= 10, O(nklogn) 2014-07\kthstr - (4) Добавить строку в бор. Вернуть k-ю строку. 2012-03\party - (4) [matching] придумать паросочетание (максимизировать независимое множество) 2011-03\wall - (5) [flow] Задача про вершинный разрез на гриде 2012-01\substr3 - (5) [strings] Наибольшая общая подстрока 10-и строк длины 10^4 2011-10b\mine - (5) [scanline] покрыть прямоугольником размера WxH точки суммарной MAX стоимости 2012-07\advent - (5) [greedy] Сложная задача (с РОИ 2006, жадность + ДП, школьники вылезают из ямы) 2011-10b\memory - (5+) [persistent, treap] persistent декартово дерево по неявному ключу + garbage collector (Зимние школьные сборы 2010) 2011-05\refrain - (5+) [strings, suffstructures] запрос к любой суф.структуре 2014-07\inside2 - (5+) [geom] Offline, для каждой точки проверить, внутри ли она невыпуклого многоугольника