Editorial of Educational Codeforces Round 13

Revision en4, by Edvard, 2016-06-16 01:45:55

678A - Вася любит числа

The problem was suggested by Abdrakhman Ismail bash.

We should find minimal x, so x·k > n. Easy to see that . To learn more about floor/ceil functions I reccomend the book of authors Graham, Knuth, Patashnik "Concrete Mathematics". There is a chapter there about that functions and their properties.

С++ solution

Complexity: O(1).

678B - Такой же календарь

The problem was suggested by Arthur Jaworski KingArthur.

Two calendars are same if and only if they have the same number of days and starts with the same day of a week. So we should simply iterate over years and maintain the day of a week of January, 1st (for example). Easy to see that the day of a week increases by one each year except of the leap years, when it increases by two.

C++ solution

Complexity: O(1) — easy to see that we will not iterate more than some small fixed constant times.

678C - Мила и шоколад

The problem was suggested by Sheikh Monir skmonir.

Easy to see that we can paint with both colours only tiles with the numbers multiple of lcm(a, b). Obviously that tiles should be painted with more expensive colour. So the answer equals to .

C++ solution

Complexity: O(log(max(a, b))).

678E - Очередной турнир ситхов

The problem was suggested and prepared by Alexey Dergunov dalex.

Let's solve the problem using dynamic programming. zmask, i — the maximal probability of Ivans victory if the siths from the mask already fought and the i-th sith left alive. To calculate that DP we should iterate over the next sith (he will fight against the i-th sith): .

C++ solution

Time complexity: O(2nn2).

Memory complexity: O(2nn).

Tags educational round 13, editorial

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en7 English Edvard 2016-06-17 00:08:58 71
en6 English Edvard 2016-06-17 00:06:45 2252
en5 English Edvard 2016-06-16 01:55:47 3667
en4 English Edvard 2016-06-16 01:45:55 1547
en3 English Edvard 2016-06-16 01:38:08 841
en2 English Edvard 2016-06-16 01:35:20 941
en1 English Edvard 2016-06-16 01:19:27 632 Initial revision for English translation
ru9 Russian Edvard 2016-06-16 00:45:21 76 Мелкая правка: ' summary="C++ solution">\n~~~~~\' -> ' summary="Решение на C++">\n~~~~~\'
ru8 Russian Edvard 2016-06-16 00:40:51 307
ru7 Russian Edvard 2016-06-15 00:49:41 3519 Мелкая правка: 'тьего типа отсортиру' -> 'тьего типа, отсортиру'
ru6 Russian Edvard 2016-06-14 23:38:12 51 Мелкая правка: 'ть: $O(log max(a, b))$.\n\n##' -> 'ть: $O(log(max(a, b)))$.\n\n##'
ru5 Russian Edvard 2016-06-14 23:37:44 62 Мелкая правка: 'ность: $O(1)$.\n\n###' -> 'ность: $O(log max(a, b))$.\n\n###'
ru4 Russian Edvard 2016-06-14 23:36:58 1541
ru3 Russian Edvard 2016-06-14 23:20:12 2276 Мелкая правка: '[1, 1]]$, v=[0, 1]$.' -
ru2 Russian Edvard 2016-06-14 01:38:58 832 Мелкая правка: 'т равен: $\lfloor p\frac na \' -> 'т равен: $p\lfloor \frac na \'
ru1 Russian Edvard 2016-06-14 01:21:42 1580 Первая редакция (опубликовано)