Открытый онлайн-чемпионат по алгоритмическому программированию пройдёт 4 октября, старт в 10:00 (Мск).
Чемпионат RuCode — это отличная возможность проверить свои знания, отследить свой рост. И, конечно, заявить о себе — для тех, у кого не было опыта участия в соревнованиях или он совсем небольшой.
Финал рассчитан на уровни дивизионов C и D. Участвовать могут команды до 3 человек (в одиночку тоже можно).
Расписание:
10:00 начало трансляции и пробный тур
11:00-16:00 основной контест
16:00 начало разбора
Задания будут доступны на русском и английском языках.
Как участвовать:
1) зарегистрируйтесь на сайте RuCode
2) заполните информацию о команде в анкете. Название команды — обязательно, даже если вы в ней один или одна
Регистрация будет открыта до 3 октября 23:59 (Мск).
До встречи на #RuCode!
It's already not "alredy".
Will it be held on Codeforces or somewhere else ??
Is there a way that I can get the emails from RuCode in English like this blog?
Will the problem statements be in English or Russian or both?
both
Are the rules available in English anywhere? Especially with regards to intellectual property rights. I'm hoping to see something along the lines of "participants retain ownership of all intellectual and industrial property rights to submissions."
Можно ли увидеть список команд, зарегистрированных на онлайн-чемпионат, чтобы убедиться, что ваша команда правильно зарегистрировалась? Будут ли как в прошлый раз 2 чемпионата — для дивизиона А\Б и для дивизиона С\Д? Если да, то как выбрать дивизион, в котором участвуешь?
Насколько я понял, будут только дивизионы C и D.
would we get the questions only in russian language?
Could we use 3 computers, or only 1 allowed?
IST time is then 12:30 pm?
MiptLited unable to login using given credentials
I can't enter to form. Is there any bugs?
The site doesn't works so i can't fill the form!
How/Why is this blog on Codeforces homepage?
This event is organized by Moscow Institute Of Physics and Technology, this institute was an important partner of codeforces in the past. Also it is a big event for Div.C teams training for upcoming Regionals for ICPC. I agree it is inconvenient to submit code on website you are not used to.
Hello, it might be a dumb question, but how can I accept a team invitation?
Hello, it might be a dumb question, but how can I accept a team invitation?
Update: Already found the answer
How did you do it?
I registered as an individual participant firstly, then I could see the team invitation.
Thank you very much
Does anyone know how to embed the timestamp in your post so it shows up correctly for all viewers? (Similar to contest announcements.)
It's 10am Moscow (UTC+3), not UTC, so here it is: 7am UTC
That's the wrong timezone! Here's the correct link: https://www.timeanddate.com/worldclock/fixedtime.html?iso=20201004T10&p1=166
Thanks! Actually super weird, I'm completely sure I typed Moscow, saw three results, and clicked the first one. Maybe I somehow cleared it.
Deleted my link.
can anybody give me an accepted code for the last problem in the trial contest (D.guss the number)?
Ethiopia (Эфиопия) isn't in the list of country in the registration form, what should I do?
Thanks in Advance!
Update: I see the field to write it manually.
Update: Getting "Attention! Country not specified Region not specified" messay when I left the country blank and fill "Ethiopia" in the text field below.
I couldn't find my country "Bangladesh" then i wrote it manually. But when i submitted it was saying country region not specified.So, I selected my nearest country and also wrote my country name manually.
Why almost everything is in Russian even when I choose English language, it's literally impossible to find out what to do, like how to find my country(all the country names are translated to Russian I think), and stuff like that.
Hi, were you able to log in
It was the easy part . . .
It showed Authorization failed when I tried to log in with the provided username and password. I checked several times but no improvement. What to do then?
did it work for you?
Couldn't find my country Bangladesh(Бангладеш). What should I do now? I entered it manually but it gives a warning.
where is the contest link or id/password
where is the contest link or id/password
Where can i found mine login ID and password? I registered to system but i can't filled the form because site not working!
Are their any prizes?
I didn't find my country Bangladesh(Бангладеш) in the list and even all the names are in Russian. As a result, I couldn't register for the contest. When I gave input manually it showed me ->(Warning! Country not specified Region not specified). Please update the form or at least give some clear instructions.
I have registered for the competition but didn't get a mail with the login ID and password.
why it didn't start?
30 min opening ceremony + 30 min practice contest
Authorization failed. Please, try again or contact your coordinator
what's wrong ? i can't logged in .it's shown above message
the same happens to me
RIP the contest
Will this be open for virtual participation later?
Hm.. how can I get statements? There is nothing on Yandex Context page.
Same problem..
same. It says "internal server error".
It has been delayed another 5 mins.
I think it is because that issues.
DIV C only delayed not DIV D.
Why are there no samples on the questions? Is this a bug or is this intentional
Looks like this is the new trend.
I can't see problems in Div D :"(
Скажите, можно вам как-то помочь с подготовкой соревнований? Хотя бы тестировать задачи, переводить условия, etc? Мне грустно видеть контест от моей alma mater с настолько низким уровнем организации.
Также во время контеста заметили, что на страничке Standings в названии команды вместо нашего третьего участника, стоял наш тренер. Почему так было?
Tutorial G-L.
G: Идея KiKoS
Если $$$n$$$ — простое или 1, то ответ $$$-1$$$.
Доказательство: если $$$n$$$ — простое, то $$$n = 1 \times \ldots \times 1 \cdot n$$$, но в таком случае количество единц должно быть 0, чтобы сходилась сумма, но разложение числа в само себя запрещено по условию. Значит ответ $$$-1$$$.
Если $$$n$$$ — составное, то найдем любой его делитель $$$d$$$ и разложим $$$n = d \cdot \frac{n}{d} \cdot 1 \times \ldots \times 1$$$. По такому разложению мы легко найдем количество необходимых единиц, чтобы выполнилось условие на сумму.
H. Идея: I_love_myself
Утверждение: если родитель мог гарантированно выиграть, то он сможет выиграть, если отсортирует аргументы по невозрастанию.
Доказательство: отсортируем в таком порядке $$$a$$$ (назовём его $$$a'$$$) и посмотрим на префиксные суммы вида $$$s_k = \sum\limits_{i = 1}^{k}a'_i - b_i >= \sum\limits_{i = 1}^{k}a_i - b_i$$$. В таком порядке $$$|s_k|$$$ будет не меньше, чем в произвольном выигрышном, то есть момент наступления выигрыша наступит не позже.
Таким образом нужно отсортировать оба массива по убыванию и проверить, выиграет ли кто-то в таком порядке.
I. Идея: Aleks5d
Давайте рассмотрим функцию $$$G(s)$$$. Заметим, какой-то буквы четно, то ни одну такую букву можно не выкидывать. Если же буквы нечетно — то нужно выкинуть не более одной такой буквы. Также можно оставить не более одной буквы такой, что ее количество нечетно. Таким образом, $$$|G(s)| \geq |s| - 25$$$.
Значит: $$$F(s) = \frac{|G(s)|^2}{|s|} \geq \frac{(|s|-25)^2}{|s|} \geq \frac{|s|^2-50|s|}{|s|} \geq |s| - 50$$$
Но с другой стороны, $$$|G(s)| \leq |s| \text{ а значит: } F(s) \leq \frac{|s|^2}{|s|} \leq |s|$$$
Значит, пусть строка-ответ равна $$$x'$$$, а $$$x = s[l\cdots r]$$$. Из этих двух уравнений следует, что $$$|x'| \geq F(x')$$$ и $$$F(x) \geq |x| - 50$$$. Значит, если $$$x' \neq x \to F(x') \geq F(x)$$$
Перейдем к неравенству: $$$|x'| \geq F(x') \geq F(x) \geq |x| - 50$$$
Получается, что строка $$$x'$$$ должна быть длиной хотя бы $$$|x|-50$$$
Значит, давайте просто переберем все подстроки, чья длина отличается не более чем на 50. Их не больше чем $$$\frac{50 \cdot 51}{2} = 1275$$$. То есть на каждый запрос мы будем тратить не больше 1275 операций, что успешно получает OK.
J. Идея: I_love_myself
Если $$$k=1$$$, то это стандартная задача на посчитать выигрышные и прогрышные вершины на оренитированном графе.
$$$k \geq 2$$$.
Лемма: если у второго игрока остался суперход и расстояние до ближайшего листа $$$> k$$$, то применять суперход не выгодно. Доказательство: применим произвольный суперход. Если попали в выигрышную позицию, то второй игрок заведомо выиграл. Если попали в проигрышную позицию, то на расстянии 2 найдется проигрышная (из свойств выигрышности и проигрышности. Так как $$$k \geq 2$$$, то второй игрок туда перейдёт. В обоих случаях мы проигываем. Лемма доказана.
Вернёмся к задаче. Все вершины, расстояние от которых до одного из листов не превосходит $$$k$$$ являются проигрышными. На остальных по лемме не выгодно применять суперход, поэтому на них можно расставлять выигрышные и прогрышные позиции как обычно.
Найти все вершины, расстояние от которых до листа не превосходит $$$k$$$ можно с помощью ленивой динамики, ровно так же будем заполнять выигрышность и проигрышность оставшегося графа. Такое решение работает за $$$O(n + m)$$$.
K. Идея: I_love_myself
Для начала заметим, что МЕХ на отрезке из ответа равен MEXу всего массива, найдём его за один проход: минимальное число, которое будет отсутствовать не превосходит $$$n$$$, поэтому достаточно сделать массив размера $$$n$$$ и помечать наличие куста такой высоты в нём.
Далее воспользуемся стандартной техникой двух указателей $$$l$$$ и $$$r$$$: будем двигать указатель на начало отрезка $$$l$$$ и если элемента со значением $$$a_l$$$ стало $$$0$$$ на отрезке с $$$l + 1$$$ по $$$r$$$ ($$$a_l < mex$$$), то будем двигать правый указатель $$$r$$$, пока не найдём число, равное $$$a_l$$$.
Итого решение за $$$O(n)$$$.
L. Идея: I_love_myself
Утверждение 1: циклов различных длин не больше, чем $$$2\sqrt{n}$$$.
Доказательство: предположим противное, отсортируем их по возрастанию, тогда в последовательности длин каждый элемент соответственно будет не меньше, чем в последовательности $$$1, 2, \ldots, 2\sqrt{n}$$$, а сумма чисел в такой последовательности больше, чем $$$n$$$.
Утверждение 2: если мы поменяем два котика местами внутри одного цикла, то цикл распадется на два, если два котика из разных циклов, то они объединятся в один.
Доказательство: проверка непосредственно.
Пусть у нас есть $$$k$$$ циклов длинами $$$l_1, l_2, \ldots, l_k$$$, тогда мы сможем получить цикл длины $$$l_i + l_j, i \neq j$$$ или длинами до $$$\max l_i$$$.
За счёт того, что различных длин порядка корня, то первую часть можно проверить в лоб.
Итого асимптотика $$$O(n)$$$.
Is there any link to the editorials of the round?