Разбор задач Educational Codeforces Round 7

Правка ru2, от Edvard, 2016-02-10 23:23:31

622A - Бесконечная последовательность

Вычтем из числа n единицу. Определим сначала номер блока в который попало n-е число. Для это сначала вычтем из числа n число 1, затем 2, затем 3 и так далее пока n не станет отрицательным. Количество вычитаний и будем номером блока, а позицией в блоке будет последнее неотрицательное число, которое мы встретим.

С++ solution

Сложность: .

622B - Время

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

А можно было просто посчитать ответ формулой: .

C++ solution 1

C++ solution 2

Сложность: O(a) or O(1).

622C - Не равный на отрезке

Эту задачу можно было решать по разному, например, с помощью структур данных или sqrt-декомпозиции. Но это, конечно, делать не требовалось. Мы предполагали следующее простое линейное решение. Сделаем сначала предподсчет: для каждого числа номер первого не равного ему слева. Теперь, чтобы ответить на запрос нужно сначала проверить число в правой границе на равентсво числу x, если они не равны то мы уже нашли ответ. Если же они равны проверим первое число слева не равное числу в правой границе.

C++ solution

Сложность: O(n).

Теги учебный раунд 7, разбор задач

История

 
 
 
 
Правки
 
 
  Rev. Язык Кто Когда Δ Комментарий
en10 Английский Edvard 2016-02-11 23:46:39 4 Tiny change: 'd modulo $10^9+7$).' -> 'd modulo $MOD=10^9+7$).'
ru8 Русский Edvard 2016-02-11 23:46:22 10
en9 Английский Edvard 2016-02-11 23:45:57 10
ru7 Русский Edvard 2016-02-11 23:45:25 24 Мелкая правка: 'циклом за линейное время). Если $n' -> 'циклом за $O(klogk)$). Если $n'
en8 Английский Edvard 2016-02-11 02:07:12 1281
ru6 Русский Edvard 2016-02-11 01:59:16 43
en7 Английский Edvard 2016-02-11 01:47:06 1130 Tiny change: '{z_{i+1}}=\nmax(d_{z_{' -
en6 Английский Edvard 2016-02-11 01:26:30 3 Tiny change: 's problem is suggeste' -> 's problem was suggeste'
en5 Английский Edvard 2016-02-11 01:25:11 79
en4 Английский Edvard 2016-02-11 01:23:26 700
en3 Английский Edvard 2016-02-11 01:11:17 460
en2 Английский Edvard 2016-02-11 00:52:17 446
ru5 Русский Edvard 2016-02-11 00:38:52 2033 Мелкая правка: 'rod\limits{j=1, j\ne' -
ru4 Русский Edvard 2016-02-11 00:04:13 989
en1 Английский Edvard 2016-02-10 23:45:06 696 Initial revision for English translation
ru3 Русский Edvard 2016-02-10 23:40:09 649
ru2 Русский Edvard 2016-02-10 23:23:31 600 Мелкая правка: 'равентсво с числом $x$, если' -
ru1 Русский Edvard 2016-02-10 23:13:44 883 Первая редакция (опубликовано)