Pull to refresh

Comments 18

А будет это соревнование добавлено в яндекс контест, чтобы самому прорешать его еще раз?
Прямо сейчас дорешивание открыто только для тех, кто зарегистрировался в соревновании. Возможно в будущем мы откроем виртуальный турнир для всех желающих.

Бесконечно благодарен за подобные соревнования, а возможность дорешивания – просто праздник!

Function S(k,Smax)
    Smax=0;
    f=0;
    r=k;
    while r>0 do
        j=r%10;
        f=f+j;
        Smax=Smax+9;
        r=(r-j)/10;
    enddo;  

    return f;
EndFunction 

Function FindNumber(iNum) export
    var Smax;
    i=1;i2=1;
    while true do
        i=i+1;
        i2=i2+2*i-1;
        k=iNum*i2*3;
        //число, которое дает нужное решение,
        //кол-во цифр в числе должно равняться 3*i
        if S(k,Smax)=(3*i) then
            return k;
        endif;
        if Smax<(3*i) then
            return undefined;
        endif;  
    enddo;  

EndFunction 

Решение задачи о сложных числах. Ряд сложных чисел 61,87,103,105,114,136,147,166

Спасибо за организацию и за этот пост. С некоторыми задачами пришлось повозиться. Теперь яснее должно стать, как они решаются. По поводу специализации на Курсере, какое участие там принимал Яндекс или будет принимать?

Спасибо :) Яндекс участвовал в организации и подготовке курса. Два автора преподают в Школе анализа данных, где читают лекции по схожим темам, но у специализации на курсере в какой-то мере ниже порог входа. Подробно о ней мы писали.
А можете выложить тестовые данные для всех задач? У меня были решения, но они не проходили по паре тестов, хотелось бы узнать кейсы эти. Спасибо.
Мы не планировали публиковать тестовые данные. Но можете попробовать задать вопрос в соревновании, мы постараемся ответить, в чем проблема.

Такие соревнования, курсы и посты с разбором решений действительно помогают выучить новое поколение программистов, спасибо вам! С вашего разрешения, я использую некоторые из задач в coding club для школьников, который я веду. Однако, не могли бы вы пересмотреть свое решение не публиковать тестовые данные? Спасибо.

Ребята, задача «Турнирная таблица» из-за специфического форматирования, реально выжрала огромное количество времени во время решения и по сути получилась как 2 задачи. Надо же как-то стараться учитывать это и не переусложнять задания. Ну вот реально был бы там CSV вывод, сэкономился бы час у некоторых.
Ещё время выжрала специфическая сортировка. Оно как бы круто её уметь делать в получившихся сложных структурах, но опять же пусть будет задача именно с акцентом на это.
И если посмотреть таблицу участников, то видно, для всех кто влез в эту задачу, кому она была не под силу, она и оказалась последней, что они пробовали.

gnomeby Да, эта задача по форматированию сложная была для C#. Но некоторые делали быстро. Возможно, использовали как-то функциональные языки.

Мы сделали задачу такой объемной по нескольким соображениям, вот, пожалуй, основные из них:
  • как я уже написал в разборе, довольно часто случаются задачи, в которых нужно разобрать входные данные и подготовить результат в нужном формате, специфичный формат вывода заставляет внимательно и аккуратно писать решение;
  • мы хотели, чтобы для решения одной из задач нужно было написать объемный фрагмент кода, в котором, если будет необходимо, найти и устранить ошибки, выявленные тестирующей системой;
  • мы хотели посмотреть на то, как участники будут распределять задачи по времени,
    предполагали, что к данной они приступят после того, как у них не останется других задач для решения или по ним кончатся все идеи.
В далеком 2020 году у меня возник вопрос «А почему Java на втором месте?» У Cplusplus 6 очков(2 победы: 3+3) и Java имеет 6 очков(1 победа и 3 ничьих: 3+1+1+1). Справедливости ради Cplusplus и Java должны делить первое место! Ну и следовательно подсчет следующих мест становится не верным.
Ссылка на реализацию -> github.com/agorinenko/yandex_cup2020/blob/master/test_03.py
В описании формата выходных данных есть абзац, который как раз посвящен данному тесту:

Команда A занимает более высокое место, чем команда B, если она набрала большее количество очков, или они обе набрали одинаковое количество очков, но команда A одержала больше побед, чем команда B.


Конкретно в данном тесте Cplusplus и Java действительно набрали одинаковое количество очков, но за счет большего числа побед Cplusplus выходит на первое место, а Java занимает второе.
Спасибо за пояснение, не углядел :)
Мы открыли виртуальные контесты для всех отборочных раундов и финала Яндекс.Блица, теперь у всех желающих есть возможность поучаствовать в соревновании в рамках виртуального участника, присоединяйтесь.
Извините, что реанимирую, но не могу найти нигде его в яндекс контесте. Его уже убрали
Only those users with full accounts are able to leave comments. Log in, please.