Тренировки

2 комментария
Alexander Agulenko
28 января 2016, 03:05

А можешь выложить разбор задач?

Василий А.
28 января 2016, 03:05

А. Обход в ширину

B. С помощью Хэшей и Хэш мапа

С. Итеративные обновления по парам возможная правильная начальная и конечная вершины. Можм либо расширяться по равным ребрам, или присоединять к одному пути сбоку другой.

D. Учимся проверять подпоследовательность на удовлетворению условию (обычная динамика или в длинных или в дабл). После Этого 50-100 раз выбираем случайную подпоследовательность, если найдется подходящая то выдаем YES, иначе NO

E. Геометрия на написать. Надо пересечь плоскости(если совпадают то все просто) и найти точки пересесечения окружностей с прямой

F. Нужно понять что не одинаковых цифр будет мало (не больше 2-3), а дальше перебрать.

G. Динамика по временам последних сабмитов и оставшемуся числу задач

H. Динамика i,j,k считаем вероятность того, что если в сектора с i по j k раз упала стрелка, то она снесет там все крайние справа сектора. (если делить длины пополам, то можно сократить время работы в два раза)

I. Для каждой позиции вычислим выигрышная она или нет и сколько из нее есть ходов. Далее добавим все выигрышные в очередь, повычитаем ходы из тех что приводят в проигрышные по 1 за каждый такой ход, если образовалась с 0, то она становится проигрышной, а значит по обратным ребрам из нее находим все выигрышные ещё не учтенные и продолжаем. Всего позиций 64*49*36*25/4=700000 обратных ходов 16.

J. Все кроме первого и последнего номера будут учтены по два раза, так что нужно поставить туда макс элементы

K. Задачка на перебор по возрастанию с отсечением по сумме и четности.