Блог пользователя Alex_KPR

Автор Alex_KPR, 13 лет назад, По-русски
Доброе время суток!

Рад всех приветствовать на Codeforces Beta Round #69. Как вы уже догадались, это будет не совсем обычный контест.

Каждому дивизиону достанется по 5 задач. Некоторые задачи встретятся и там, и там; другие же будут предназначены для конкретного дивизиона. Но с точки зрения участника не должно быть разительных отличий от других раундов. 

Обращаю ваше внимание, что подобный эксперимент проводится впервые, поэтому вполне вероятны некоторые технические трудности и неожиданные проблемы. Если такое возникнет, то прошу отнестись с пониманием. =)

И ещё: разбалловка в первом дивизионе будет 500-1000-1500-2000-2000. У второго дивизиона будет классический вариант 500-1000-1500-2000-2500.

Раунд готовили Alex_KPRdagon и Marishka. Много полезных вещей делали RADit4.kp. Задачи переводила Мария Белова. Контролировал весь процесс Майк Мирзаянов.

Всем удачи! =)
_____________________________________

Не забудьте проголосовать, понравилось ли вам разделение по дивизионам, или нет =)
_____________________________________

Первые десять мест в первом дивизионе заняли:
Место
Кто
1
 vepifanov
2
 KADR
3
 hos.lyric
4
 Zhukov_Dmitry
5
 e-maxx
6
 Romka
7
 ivan.popelyshev
8
 Shef
9
 RAVEman
10
 ktuan

Первые три места во втором дивизионе заняли:
Место
Кто
1
 Gluk
2
 nvilcins
3
 piloop

Поздравляем победителей и желаем всем удачи в следующем раунде!
_____________________________________

Опубликован разбор.
  • Проголосовать: нравится
  • +177
  • Проголосовать: не нравится

13 лет назад, # |
  Проголосовать: нравится -9 Проголосовать: не нравится
Всем удачи сегодня на контесте!
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Разбалловка как-то корреллирует со сложностью задач? Или как обычно?
  • 13 лет назад, # ^ |
      Проголосовать: нравится -8 Проголосовать: не нравится
    Таки как обычно. И зачем было делать 2000-2000, если пятую решило в 4 раза меньше человек, чем четвертую?
    • 13 лет назад, # ^ |
        Проголосовать: нравится +11 Проголосовать: не нравится
      Может, потому, что они априори одного уровня сложности?
      В четвертой не надо ничего знать, но надо аккуратно написать. В пятой нужно знать одну вещь, но зато задача - школьное упражнение на это знание.
      Если бы они шли в порядке E-D, соотношение решивших могло поменяться в пользу E, я считаю.
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Тогда, почему в manthan нельзя было третью, четвертую и пятую? Ведь третья - это довольно сложная техника, в четвертой пять строк правильного бинпоиска, в пятой геом, который пишется кучей способов с теми ограничениями.
13 лет назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится
Похоже, в сумме, рекордное количество участников набралось! Поздравляю сообщество с новым рекордом! - )
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Почему время начала перенесли на 19:15?
  • 13 лет назад, # ^ |
      Проголосовать: нравится +22 Проголосовать: не нравится
    Чтобы побить рекорд :)
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Палево в условии/тестах/чекере/валидаторе или какая-либо тех. заминка (например из-за C++0x)
  • 13 лет назад, # ^ |
      Проголосовать: нравится +19 Проголосовать: не нравится
    спасибо что время перенесли, а то я бы опоздал на несколько минут :)
    • 13 лет назад, # ^ |
        Проголосовать: нравится +14 Проголосовать: не нравится
      Да, спасибо большое. У меня вообще весёлая история: проснулся в без-пяти-начало-контеста от звонка телефона. Телефон сумел уронить под кровать, две минуты спросонья не мог найти, потом он звонить перестал. Когда нашёл, увидел две вещи: 1) звонили с неизвестного номера; 2) звонили в без-пяти-начало-контеста.
      ...И контест ещё потом перенесли чуть-чуть.

      Хочется сказать огромное спасибо анонимусу, ибо перезванивать посреди ночи и спрашивать, кто это был, уже как-то неудобно =)
13 лет назад, # |
  Проголосовать: нравится +31 Проголосовать: не нравится

Желаю всем рейтингового матча без багов в условиях задач и тестах:)

Чтоб удовольствие от отличного времяпровождения не испортилось от таких мелочей. 

13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Перенесли начало на 15 минут? Мне почему то сразу воскресные опекапы  вспомнились -  у них частенько такое было.
13 лет назад, # |
  Проголосовать: нравится +20 Проголосовать: не нравится
good luck and easy hacking)))
13 лет назад, # |
  Проголосовать: нравится +2 Проголосовать: не нравится
Very glad to see separate set of problems for each division in same round.
13 лет назад, # |
  Проголосовать: нравится +4 Проголосовать: не нравится

По-моему надо поправить FAQ. Там написано, что рейтинг 1500+ означает участие в первом дивизионе, на деле оказалось, что нужно как минимум 1650.

  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Согласен, сам чуть не напоролся 1 раз. Вообще в другом блоге (или там в комментах, точно не помню) было написано, что синие тоже идут во второй дивизион. 
  • 13 лет назад, # ^ |
      Проголосовать: нравится -11 Проголосовать: не нравится
    Об этом минимум 2 раза написано в факе в комментах
13 лет назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится
Зеркала с условиями не будет? А то видя, как сайт ведет себя сейчас, я боюсь представить, что же будет, когда контест начнется.
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Если нет, то значит в 19:15 полторы тысячи человек поломится сразу по-быстрее открыть все 5 задач - посмотрим как оно это выдержит.
13 лет назад, # |
  Проголосовать: нравится +10 Проголосовать: не нравится
В 18-55 по Москве сервер в течение минуты выдавал мне "Server is too busy". В 19-02 по Москве и вовсе на экране закрасовалась ошибка 404. Как будто сам сервер пытается что-то мне сказать... Я на измене :)
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Новый рекорд количества участников!
13 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится
GOD BLESS US.. :)
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

эксперименты это хорошо, но:

мне идея не понравилась.

Я всегда участвую в обоих дивизионах, хоть и отношусь ко второму.

Были бы контесты в разное время, была бы возможность поучаствовать и в 1-ом и во 2-ом.

Конечно, я на дорешивании решу несколько задач из 1-го, но хотелось бы в нём и поучаствовать.

ИМХО.

13 лет назад, # |
  Проголосовать: нравится +29 Проголосовать: не нравится
условия от  Alex_KPR в очередной раз доставляют )
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    какие именно? =)
    • 13 лет назад, # ^ |
        Проголосовать: нравится +4 Проголосовать: не нравится
      все :)
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Действительно. Начнем с первой задачи див1. Мало того что размер условия-на лист формата А4, этот лист еще и фиг прочитаешь. Задача В. Указать то что действительные значения могут быть-надо было, от этого менялся характер задачи. Согласен, можно было понять по входным данным что да как, но для этого приходилось рисовать или писать. Дальше продолжать?
        • 13 лет назад, # ^ |
            Проголосовать: нравится +19 Проголосовать: не нравится
          да, конечно

          мне интересно знать все недостатки нашего раунда :)
          • 13 лет назад, # ^ |
              Проголосовать: нравится +5 Проголосовать: не нравится
            Меня сбили ограничения на претестах в B. Я их принял за обычные ограничения и пролетел на a=0. Наверное, не стоит во входных данных писать неравенств, не относящихся к ограничениям.
          • 13 лет назад, # ^ |
              Проголосовать: нравится +6 Проголосовать: не нравится

            Условия, конечно, прикольные... Только легенды к задачам сочиняются чтобы облегчить понимание задачи. А у вас они иногда к задаче не имеют никакого отношения.

            Например, какое отношение имеет попадание в цель наковальней к корням того квадратного уравнения? Физический или не физический смысл как-то найти сложно... Потому после 10-тиминутного чтения остается ощущение, что всё-таки я неправильно понимаю условие. И тратится ещё 15 минут времени чтобы найти хоть какую-то связь между условием и легендой.

  • 13 лет назад, # ^ |
      Проголосовать: нравится +1 Проголосовать: не нравится
    Во время контеста я хотел просто повеситься. Хочу обратиться к автору и попросить его больше не делать таких условий. Такие условия думаю будут в теме в каком-нибудь литературном кружке или где-нить ещё но только не на программистском контесте. Я если подробнее то на понимание условия первой задачи у меня ушло минут 20 + вопрос авторам (который потом стал кларом). На второе ушло минут 10 + 5 минут на задавание себе вопроса бывают ли p, q вещественными + 5 на задавание такого вопроса авторам. Третью понял сразу. А четвёртую так до конца контеста и не понял (мне потом объяснили). Итог: задачи хорошие, условия испортили всё впечатление о контесте((
    • 13 лет назад, # ^ |
      Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится
      спасибо за комментарий, рад, что задачи понравились :)
    • 13 лет назад, # ^ |
        Проголосовать: нравится +5 Проголосовать: не нравится

      Эдик, ну ты сам про себя всё знаешь ;)

      А вообще у меня тоже раньше были серьёзные проблемы - я всегда умудрялся понимать условия не так, как все, и решать другие задачи ))) потом эта беда постепенно улетучилась

      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Знаешь это оказывается у меня не только в кодинге. Вчера я решал домашку по терверу и две задачи упорно не мог решить (потому что не понимал условия). Одну я всё-таки решил. Сегодня оказалось что я обе неправильно понимал и они очень просто решались((
13 лет назад, # |
  Проголосовать: нравится +305 Проголосовать: не нравится
Вместо голосований: поставьте здесь плюс, если вам понравилась идея разделения участников по разным контестам в зависимости от дивизиона.
====
Instead of poll: please click "I like" on this comment if you like an idea to split participants into two different contests depending of their division.
  • 13 лет назад, # ^ |
      Проголосовать: нравится -22 Проголосовать: не нравится
    Не могу удержаться
    Всем троллям на заметку: вот он-идеальный способ получить большой плюс:)
    • 13 лет назад, # ^ |
        Проголосовать: нравится +11 Проголосовать: не нравится
      Написать свой кодефорсес, покрасить свой ник в черный цвет и проводить опросы кнопкой "I like"? :)
  • 13 лет назад, # ^ |
      Проголосовать: нравится +3 Проголосовать: не нравится
    I think it is better for participants from the second division, to have some easier problems, so that we avoid situation where a lot of them can solve none or only 1 problem.

    I also think that a good idea may be losing points for a task per second instead of per minute.
13 лет назад, # |
  Проголосовать: нравится +162 Проголосовать: не нравится
Вместо голосований: поставьте здесь плюс, если вам не понравилась идея разделения участников по разным контестам в зависимости от дивизиона, а нравятся больше стандартные общие контесты.
====
Instead of poll: please click "I like" on this comment if you do not like an idea to split participants into two different contests depending of their division, and you like typical common contests more.
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    А в общем контесте подразумевается разделение дивизионов по комнатам?

    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Да, дивизионы в разных комнатах
      =
      In this case we suppose that participants from the different divisions do not share rooms.
  • 13 лет назад, # ^ |
      Проголосовать: нравится -12 Проголосовать: не нравится
    а минусовать плохо, когда не просят! :)
    =====
    Don't cheat, people, who wants splititing participiants: don't minus this comment! :)
  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +10 Проголосовать: не нравится

    Вот не понимаю, почему большинство голосовавших поддержало идею разделения контестов.
    Если в общем контесте участники делятся по комнатам, то для div1 оба варианта совершенно одинаковы: они в своих комнатах решают контест div1.
    Получается, что участники div2 проголосовали за то, чтобы не иметь возможности пытаться решать сложные задачи. А они что, вечно собираются сидеть в div2?
    Я бы понял, если бы речь шла о том, что теперь всегда будет по 2 контеста. Но ведь контесты div2 only никто не отменял. 

    • 13 лет назад, # ^ |
        Проголосовать: нравится +9 Проголосовать: не нравится

      Потому что в раздельном контесте можно решить четыре задачи, а в общем только две. Первое делает человека более счастливым :о)

      Писать сложный контест и решать в нем только А и В -- это не очень круто тоже.

       

      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Я вчера писал див1 и решил только две задачи, но так сделало половина див1. Так что я вполне доволен:)
    • 13 лет назад, # ^ |
        Проголосовать: нравится -9 Проголосовать: не нравится
      Я голосовал за раздельные раунды, ибо сначала обрабатываются посылки див1, потом посылки див2:) Див1 ждет меньше времени и раньше узнает прошла у него задача или нет.
    • 13 лет назад, # ^ |
        Проголосовать: нравится +5 Проголосовать: не нравится
      Разделение дает свободу в выборе сложности задач. Вам не кажется немного абсурдным, что начинающие школьники должны решать общий контест из пяти задач с, например, Petr'ом или ACRush'ем?
      Второй же дивизион при предложенном подходе сможет отработать пять идей по своему уровню. С чего Вы взяли, что они не будут иметь возможности решать сложные задачи? Напишут свой контест, потом прорешают div. 1. Вечно сидеть в div. 2? Ну что Вы. Подрастут, заматереют (всему своё время) — и пробьются в первый дивизион. И эта составляющая тоже очень важна.
      По-моему, могут быть две причины столь поздней попытки осуществить разделение: схожесть с топкодером и увеличение затрат на организацию раунда.
      • 13 лет назад, # ^ |
        Rev. 2   Проголосовать: нравится +3 Проголосовать: не нравится
        «При встрече с достойным человеком думай о том, как сравняться с ним. Встретившись с низким человеком, вникай в себя и сам себя суди»
        Конфуций.
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        зато тот, кто попал в div1 уже не может решать div2 only, хотя для некоторых это полезно.
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          they can but out of competition ;)
          • 13 лет назад, # ^ |
              Проголосовать: нравится 0 Проголосовать: не нравится
            На параллельных соревнованиях - нельзя
            • 13 лет назад, # ^ |
                Проголосовать: нравится -8 Проголосовать: не нравится
              и что? никто не отменяет div-2 only раунды
              • 13 лет назад, # ^ |
                  Проголосовать: нравится 0 Проголосовать: не нравится
                Если частота появления контестов не изменится, то разницы я не вижу. А вот если рассматривать 2 параллельных контеста как -1, то это печально.
      • 13 лет назад, # ^ |
          Проголосовать: нравится +13 Проголосовать: не нравится
        Я начинающий школьник и хочу решать, как халяву, так и то что решает тот же Petr

        ЧЯДНТ?
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          удачи решить в дорешке то, что решит Petr - опять-таки, проблем не вижу
          • 13 лет назад, # ^ |
              Проголосовать: нравится 0 Проголосовать: не нравится
            ну дорешивание и контест сильно отличаются. В дорешивании почему-то решается побольше задач (даже не учитывая разбор).
          • 13 лет назад, # ^ |
              Проголосовать: нравится 0 Проголосовать: не нравится
            Не понимаю, почему в этом обсуждении уже не в первый раз дорешивание упоминается. На CF можно решать задачи из архива, как и на множестве других сайтов. Но, согластесь, что соревноваться с Петром и дорешивать за ним - это разный уровень мотивации.
            Я не о шансах сейчас, да и не о Петре конкретно, а о самой возможности выступать в соревнованиях определенного высокого уровня. Что при разделенных контестах станет не всем доступно.
            А для начинающих, повторюсь, div2 only и возможность самостоятельно решать задачи с множества сайтов никто не отменял.  
            • 13 лет назад, # ^ |
                Проголосовать: нравится +8 Проголосовать: не нравится
              из-за div-2 участников необходимо давать необоснованно простые две первые задачи в div-1 раунде, чтобы их даже div-2 участники смогли порешать, хотя большинство div-1 участников тратит на них 10-15 минут и, частенько, не решает больше ничего

              так что же получается? div-2 участники обламывают фан div-1 участникам, а сами всё равно ничего не могут решить - не кажется ли это глупым?
            • 13 лет назад, # ^ |
                Проголосовать: нравится +5 Проголосовать: не нравится
              а о самой возможности выступать в соревнованиях определенного высокого уровня

              Претендуешь на высокий уровень? Имей высокий рейтинг.
    • 13 лет назад, # ^ |
        Проголосовать: нравится +6 Проголосовать: не нравится
      Согласен, пусть лучше вместо 5 контестов(по 7 задач) будет 7(по 5) и каждый сможет порешать каждую задачу. Решать то-то просто в архиве это совсем другое
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
С удовольствием поучаствовал бы, если бы контест был на пару часов позже или наоборот, с утра =(
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Подскажите пожалуйста, как я могу во время соревнования посмотреть тест на котором меня взломали?
  • 13 лет назад, # ^ |
      Проголосовать: нравится +15 Проголосовать: не нравится
    Никак, в этом и соль - )
  • 13 лет назад, # ^ |
      Проголосовать: нравится +3 Проголосовать: не нравится
    Ваша цель - найти ошибку в своем решении. Естественно, вам никто не скажет, какая именно у вас ошибка.
13 лет назад, # |
  Проголосовать: нравится -26 Проголосовать: не нравится
Кто-нибудь знает, что выводить в D если b=0?
  • 13 лет назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится
    Нехорошо задавать такие вопросы во время соревнования. Ответ 1.
13 лет назад, # |
Rev. 2   Проголосовать: нравится +22 Проголосовать: не нравится
Хочу сказать спасибо автору контеста за хорошие задачи и указания, какие случаи рассматриваются в претестах (по крайней мере, так было во 2ом дивизионе).
Задачи B и D (2ой дивизион) породили много взломов :)
  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +6 Проголосовать: не нравится
    согласен, задачи хороши!
    ломал В на 15:17 :)
    а Д на лонгах не успел поломать, RomaFurko опередил :(
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Мой единственный взлом "13:45" :)
    • 13 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится -8 Проголосовать: не нравится

      4 взлома по B... 1 взлом по А, причем пример который в начале условия описан 2 5

      ну что за люди пошли...:) халявные 100 баллов

  • 13 лет назад, # ^ |
      Проголосовать: нравится +13 Проголосовать: не нравится
    А вот я пробежал глазами строчку про претесты и не посмотрел на строчку с нормальными ограничениями, поэтому не рассмотрел один случай :(
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Та же херня. ИМХО подло так условие писать )) Специально посмотрел может ли а быть нулем, увидел что строго больше и послал
13 лет назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится
Мне понравились задачи :) Особенно B :))
13 лет назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится
Интересные задачи. 
Спасибо за контест!
13 лет назад, # |
  Проголосовать: нравится +18 Проголосовать: не нравится

Надо ограничение на претесты писать не в формате входных данных.

Хотел посмотреть может ли a быть нулём, смотрю в формате инпута: 0 < a, ну и заслал без этого случая.

  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
    Аналогично!!!! В точности эта ошибка(
    Уже когда заблокировал, и начал пытаться взломать, увидел что может быть равно 0!

    Думаю, у многих упадет!
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Ну наверное такие решения уже по большей части взломаны :)
  • 13 лет назад, # ^ |
      Проголосовать: нравится -16 Проголосовать: не нравится
    Угу, а я еще и по А, начал писать решение, где стоимости всех боссов равны, а случаи из примеров рассмотрены отдельно.
13 лет назад, # |
  Проголосовать: нравится -10 Проголосовать: не нравится
Наконец интересные задачи среди легких из первого дива. Только интегрирование в B для школьников могло оказаться проблемой (или она решалась иначе?).
  • 13 лет назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится
    да вроде там можно интуитивно понять, без применения жесткой теории))
    я про площадь части прямоугольника естественно
  • 13 лет назад, # ^ |
      Проголосовать: нравится +4 Проголосовать: не нравится
    можно было порисовать и понять, что достаточно просуммировать площади треугольников
  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +1 Проголосовать: не нравится
    Можно решать методом, подобным к тому, каким считают сумму арифм.прогрессии в школе. Только для удобства умножим b на 4 сначала, а дальше очень просто:

    Очевидное решение для отрезка (b,a), если он существует (там вероятность в каждой точке 1),
    а для отрезка (0,min(a,b)) можно провести медиану и относительно нее "свернуть" так же, как при суммировании арифм. прогрессии сворачивают относительно середины. Тогда граничный переход в явном виде не нужен, он интуитивно очевиден.
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Исходно задача была немного другая, вместо корня из p было просто p. Потом решили, что не стоит усложнять решение необходимостью брать интеграл, учитывая то, что школьники действительно это могут не уметь.
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Я не заметил, что там корень и решал через интегралы =\
13 лет назад, # |
  Проголосовать: нравится +2 Проголосовать: не нравится
I would so love to have a chat room facility available on Codeforces, where people can discuss contests after round is over. Since we don't have that yet, if most of you use IRC, I've registered a channel on irc.freenode.net by the name of #codeforces. If you like IRC, please join.

(And yes, I can hand it over in case it gets some population, and CF wants it)
13 лет назад, # |
  Проголосовать: нравится +9 Проголосовать: не нравится
Правильная стратегия раунда Div.1: быстро прочитать все условия задач, быстро сдать Е а потом нетерпеливо жмакать на сабмит отправляя остальные :)
  • 13 лет назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится
    Да, я боялся, что кто-нибудь очень быстро сдаст Е =) Впрочем все обошлось.
    • 13 лет назад, # ^ |
        Проголосовать: нравится +13 Проголосовать: не нравится
      Да там бы цепная реакция пошла. Сдал один - все офигевают и тоже сдают :)
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Подстаааааааава. Опять прям-таки ж0сткий троллинг =)
    Интересно, другие авторы тоже собираются этот приём (радикальное несоответствие баллов сложности задач) брать на вооружение или впредь можно всё-таки будет спокойно читать задачи в привычном порядке?
    • 13 лет назад, # ^ |
        Проголосовать: нравится +5 Проголосовать: не нравится
      В задачах C и D, на мой взгляд, достаточно просто понять идею решения. А в E решение инверсией очевидно только для тех, кто хоть что-то знает про нее.

      PS Еще никто не ругнулся по поводу того, что эта задача была на тему "кто знает, тот решит, а для остальных гроб". Даже странно. Или есть простое решение без инверсии?
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Я не читая условия, увидев картинку, понял что это инверсия. Но я её ни разу не писал и формулы не очень помню и времени не было поэтому я не стал читать условие и забил
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          Кстати, в инете легко гуглится эта конструкция со всеми формулами и доказательствами. Это Pappus Chain.
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          надо знать только r' = 1/r  и то что при этой операции окружности и прямые переходят в другие окружности и прямые, никаких особых формул тут нет.
13 лет назад, # |
  Проголосовать: нравится +7 Проголосовать: не нравится
Задачи были сложнее чем обычно + не совсем здоров и результат в целом печальный. С нетерпением жду разбора задачи С.
  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +8 Проголосовать: не нравится

    C решается несложной динамикой по поддеревьям.

    Пусть f[v] - количество бобров, которое мы можем съесть, спустившись в это поддерево и вернувшись в корень.

    g[v] - количество бобров, которые останутся в вершине v, когда мы полностью обработаем поддерево.

    Чтобы посчитать значения для вершины, поймем, в какие поддеревья и в каком порядке нам надо заходить. Понятно, что это выгодно делать в порядке уменьшения f[child(v)]. Пока есть возможность (т е пока в текущей вершине еще есть бобры), заходим по разу в каждое поддерево. При этом уменьшаем k[v], т к это цена возврата из поддерева. Если после этого бобры в нашей вершине еще остались, пытаемся попрыгать между v и каждым child(v) столько раз, сколько можно (min(g[child(v)], k[v]) раз). f[v] - это сумма всех накопленных величин, g[v] - это оставшееся k[v], если мы больше не можем совершать прыжки вниз.

    • 13 лет назад, # ^ |
        Проголосовать: нравится -8 Проголосовать: не нравится
      На самом деле если посмотреть на эту динамику то это не динамика (в каждую вершину мы зайдём ровно 1 раз), а просто dfs который возвращает пару
      • 13 лет назад, # ^ |
        Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
        Решение большой задачи основано на решении нескольких аналогичных маленьких подзадач. Чем не классическая динамика? А динамика по поддеревьям вроде бы обычно и реализуется дфсом.
        • 13 лет назад, # ^ |
            Проголосовать: нравится +9 Проголосовать: не нравится
          Жадность под этот алгоритм больше подходит
        • 13 лет назад, # ^ |
            Проголосовать: нравится +4 Проголосовать: не нравится
          Здесь задачи не перекрываются (каждая задача решается ровно один раз), а это вроде является необходимым, чтобы динамика была динамикой
          • 13 лет назад, # ^ |
              Проголосовать: нравится +1 Проголосовать: не нравится
            Что тогда есть настоящая динамика по поддеревьям? В этом случае любая подзадача будет решаться ровно один раз - для своего предка.
            • 13 лет назад, # ^ |
                Проголосовать: нравится +1 Проголосовать: не нравится
              Когда то один умный человек мне сказал, что динамика - это та же жадность, просто чуть сильнее обоснованная=) не вижу оснований для выяснения динамика это или жадность, ибо это и то и то в равной степени=)
  • 13 лет назад, # ^ |
      Проголосовать: нравится +4 Проголосовать: не нравится
    Выздоравливай!
13 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
During the whole contest i couldn't go to my room . When i click the room button it always takes me to room 1 where it shows there is no contestant !
13 лет назад, # |
  Проголосовать: нравится -9 Проголосовать: не нравится
Можно больше не писать "ограничения на претестах", пожалуйста? :) Очень сбивают при быстром чтении условия.
  • 13 лет назад, # ^ |
      Проголосовать: нравится +40 Проголосовать: не нравится
    То, что их в этот раз писали - это чудесно. Но формат надо поменять, чтобы не сбивал
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Ох сейчас начнется мешанина из обсуждения задач обоих дивизионов. Может лучше еще один топик создать?
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Сделайте разбор, пожалуйста.
13 лет назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится
Why was tourist crumbling in this contest?!
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
I'm still waiting for system tests
13 лет назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится
Предлагаю "ограничения на претестах" выделить в отдельный подзаголовок, чтобы глаз спотыкался на жирном шрифте. А то вперемешку с остальными входными данными они у меня породили тот же трабл по B, что и у многих — незамеченный случай a = 0.
  • 13 лет назад, # ^ |
      Проголосовать: нравится +16 Проголосовать: не нравится
    гм, ну массовое введение ограничений на претесты - это своего рода тоже эксперимент

    думаю, что пожелания будут учтены и в дальнейшем ситуация улучшится :)
13 лет назад, # |
  Проголосовать: нравится +50 Проголосовать: не нравится
I would pay a lot for a feature "You used %lld, fool!" when submitting...
13 лет назад, # |
  Проголосовать: нравится -21 Проголосовать: не нравится

Саша, Саша... Ты обещал, что даже придирки все учли!!! Ты посмотри в условие задачи А, а особенно в формат вывода... Нельзя так писать!!! Я долго думал, а потом послал все-таки решение, где действительно выводилось то, что написано в формате вывода! Потом выяснилось, что надо верить тому, что написано в середине здорового условия, а не в формате вывода. Я не прошу сделать контест нерейтовым, попытку неудачную хотя бы уберите, пожалуйста.
P.S. Дословная цитата из условия:

Выведите два целых числа — минимальную разницу в опыте между персонажами, которые получат максимальное и минимальное количество очков опыта, и максимальное суммарное количество симпатий в группах (количество дружб между персонажами, оказавшимися в одной группе).

  • 13 лет назад, # ^ |
      Проголосовать: нравится +8 Проголосовать: не нравится
    я был против последней фразы, даже issue осталось

    жаль, что её оставили :(
    • 13 лет назад, # ^ |
        Проголосовать: нравится -26 Проголосовать: не нравится

      Ну ладно бы написали... Хотя бы в тестах из примера бы опревергли такое понимание. Нет же! Тесты из примера прошло на ура. Вот скажи, какие у меня могли быть после этого сомнения?! Я официально прошу мне и всем, кто послал такое же решение до правильного, отменить такую посылку. Я просто не знаю у кого это просить, поэтому прошу здесь.

  • 13 лет назад, # ^ |
      Проголосовать: нравится +5 Проголосовать: не нравится
    Я же тебя просила по-хорошему: договорись с Сашей и прочитай его условия до начала контеста. Видишь, как ты все хорошо замечаешь?
    • 13 лет назад, # ^ |
        Проголосовать: нравится +6 Проголосовать: не нравится
      Я же написал по-хорошему, что не против. Но Саша, видимо, хотел сделать этот контест без моей помощи. Более того, он настоятельно порекомендовал мне участвовать. Ну а если бы перед участием я прочитал все задачи, то, думаю, мне бы удалось отрешаться получше в этот день... А ну да... Еще бы и недочеты подправил в условиях...
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        ну в любом случае в этом раунде ты в обиде не остался :)
        точнее, рейта не слил, экспу получил, все ок :)
    • 13 лет назад, # ^ |
        Проголосовать: нравится +4 Проголосовать: не нравится
      Наташ, я лично предложил Павлу принять участие в раунде

      но его понимание условий уникально =)
      • 13 лет назад, # ^ |
          Проголосовать: нравится +11 Проголосовать: не нравится
        У меня тоже раньше частенько бывали проблемы с уникальным пониманием условия. Но суть в том, что, строго говоря, любой текст на любом языке всегда может быть понят более чем одним способом. Это, конечно, слишком абстрактно, но если обратиться к эмпирическим фактам, то в истории ACM, как это ни печально, бывали случаи, когда и на финале ICPC команды пролетали из-за того, что находили понимание условия, которое не противоречило тексту, но было уникальным и неправильным.

        Мораль отсюда такова. Надо не искать как можно больше интерпретаций, а решать ту задачу, которую имел в виду автор. Как ты будешь читать его мысли сквозь текст условия - это твои проблемы.
        • 13 лет назад, # ^ |
            Проголосовать: нравится -8 Проголосовать: не нравится
          в любом случае, задача автора - сделать условия такими, чтобы их первое понимание было правильным

          поэтому я считаю, что это моя вина, если кто-то из участников что-то понял неправильно не потому, что где-то что-то не дочитал, а потому, что где-то условие написано двояко
          • 13 лет назад, # ^ |
            Rev. 2   Проголосовать: нравится +7 Проголосовать: не нравится
            Ну так я согласен, что автору винить надо себя. Чтобы все, кто внимательно прочитает, поняли правильно (кстати, что значит "первое понимание"?) - это идеал для автора. Я только говорю, что идеал в данном случае недостижим, вернее, недостижима его гарантия. Так что и участнику тоже следует винить в первую очередь себя, если он чего-то недопонял.
            • 13 лет назад, # ^ |
                Проголосовать: нравится 0 Проголосовать: не нравится
              На самом деле глупо отрицать неверное понимание условия. Судя по кларам в обоих дивизионах - я не одинок. Я поговорил со своими друзьями, которые решали контест, они говорили, что тоже гадали, что же от них требуется. Многие, кто получил WA #3 на контесте, пострадали именно от неграмотно составленного абзаца.
              Когда условие и "Формат вывода" противоречат друг другу - это ненормально. Поражает другое - как вот та толпа людей, что указана сверху в тексте поста пропустила такой косяк? Я выводил то, что написано вывести в формате вывода! Чему я должен верить - формату вывода или какому-то предложению в центре огромного условия?
              • 13 лет назад, # ^ |
                  Проголосовать: нравится +6 Проголосовать: не нравится
                Т.е. вы прочитали условие задачи, поняли что от вас требуется, потом посмотрели в формат вывода, поняли что там требуется вывести что-то другое, стали гадать и послали понимание основанное на формате вывода? А почему вопрос не задали?
                • 13 лет назад, # ^ |
                    Проголосовать: нравится -14 Проголосовать: не нравится
                  ====================================
                  Задать вопрос = Написать вопрос + Отправить вопрос + Дождаться ответа + Прочитать ответ = Примерно тому же по времени, что и сделать неверную попытку.
                  В конце концов, на контестах обычно в таких случаях посылают оба варианта, а потом просят снять решение, которое все-таки не угадало, что же требуется. Откуда мне было знать, что в по понятиям Codeforces снимать решения, которые выводят то, что написано в формате вывода, а не то, что задумал там себе на уме автор - нипапацански?..
                  Меня поражает, что здесь все пытаются выгородить авторов и организаторов контеста. Вместо того, чтобы отметить факт, что формат вывода был написан криво, но целый взвод программистов, который готовил этот контест не заметили это. Из двух человек, которые решали эту задачу в моем ВУЗе - два поняли неправильно эту задачу с первого раза - у обоих красуется WA #3 в отправках. Х#й (да-да, я хочу использовать именно это слово) с этими баллами, оставили все как есть, так оставили. Меня просто поражает то, что все пытаются обвинить участников, которые понимают х#@во (эх, вошел в кураж) написанное условие не так, как авторы задумали.
                  Если верить Саше, то он даже обратил внимание авторов на эту формулировку, но тот самый взвод программистов это проигнорировал. Далее будет вообще мат-перемат, поэтому остановлюсь.
                  • 13 лет назад, # ^ |
                      Проголосовать: нравится 0 Проголосовать: не нравится
                    Можно воспитывать взвод проблемсеттеров, а потом другой взвод - после другого контеста, и третий, и так далее...
                    А можно вспомнить, что на финале у тебя будет условие на A4, где, вполне возможно, в первых двух абзацах будет только одно значимое (но очень значимое!) для решения слово, причём это будет слово thousand. Да и без этого в условии запросто может быть неоднозначность. И формат вывода надо будет восстанавливать из сэмпла.
                    • 13 лет назад, # ^ |
                        Проголосовать: нравится 0 Проголосовать: не нравится
                      ==================================
                      Меня терзают смутные сомнения, что на финале будет что-то вроде:

                      Bob wants to find the maximum possible number of red pills.
                      Output format:
                      Output the maximum possible number of pills.
                  • 13 лет назад, # ^ |
                      Проголосовать: нравится 0 Проголосовать: не нравится
                    В конце концов, на контестах обычно в таких случаях посылают оба варианта, а потом просят снять решение

                    Так, давайте разбираться. Такое действительно иногда происходит, но совершенно в другом случае. А именно, когда существует два разных правильных понимания условия! У нас же совсем иная ситуация. У нас (если очень формально подходить к пониманию) нет ни одного правильного понимания! Ваше понимание условия неверное т.к. в услвии прямо сказано что именно надо искать. Иными словами, вы что-то послали при неверное понимании условия, причем вы знали, что оно неверное. И с какой это радости эту посылку должны не засчитывать?

                    Поймите правильно, я никого не выгораживаю. Мы виноваты в том, что условие получилось противоречивым, а вот ваша вина в том что вы сделали посылку не уточнив, что же надо выводить.
                    • 13 лет назад, # ^ |
                        Проголосовать: нравится +14 Проголосовать: не нравится
                      =====================================
                      То есть я настолько дебил, что прекрасно осознавая, что мое понимание - неправильное, послал решение на проверку?
                      Да откуда я мог знать, что решение, которое на ура прошло тесты из примера - неправильное?! Я выводил один в один то, что написано в формате вывода. Нахрена вы его писали, если вывести надо не то, что там написано? Условие двусмыслено!
                      Предположить, что авторы задумали фишку на то, читает ли кто-нибудь формат вывода - запросто. Проверка со стороны штаба и не такое пропускала. Если обратить внимание, то дальше нам предстоит нагибать существ наковальнями и давить бобров по всей Земле. После этого у меня могли быть сомнения, что авторы такое задумали? Ни в коем случае! Спасибо, что на самом деле хотя бы такое не задумали...
                      • 13 лет назад, # ^ |
                          Проголосовать: нравится 0 Проголосовать: не нравится
                        =========================================
                        Так я не понял перед посылкой вы видели что ваше понимание противоречит условию или нет? Если да, то вы знали что ваше понимание неправильное, если нет, то вы невнимательно читали условие.

                        Вы как-то сами себе противоречите, давайте уже определимся наконец что там произошло.
                        • 13 лет назад, # ^ |
                            Проголосовать: нравится 0 Проголосовать: не нравится
                          ==============================================
                          Сдается мне, что мои сообщения никто не читает. Сотый раз пишу, что знать не знал - верное мое понимание или нет. Спасибо "удачно" подобранным сэмплам.
                          Я предположил, что авторы решили поймать нас на том, что никто не посмотрит на формат вывода. Проверил - сэмплы прошло. Послал - WA #3. Исправил. Отпал интернет. Пока искал способы решения проблемы, понатерял кучу времени, но в конце концов послал второй вариант понимания, который прошел претесты. Я уже писал, откуда у меня такие предположения.
                          • 13 лет назад, # ^ |
                            Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
                            ==================================
                            Так, я кажется понял откуда у нас с вами такое дикое непонимание...

                            Похоже у нас абсолютно разные определения того, что называется "верное понимание" условия. Вы, как я понимаю, считаете, что верное понимание то, которое у жюри, так? Я понимаю, что верное понимание то, которое следует из условия и не противоречит ему. Т.е. я считаю, что участник прежде чем решать задачу должен найти верное понимание. И он будет знать верное оно или нет. И вот если его верное понимание почему-то не совпадает с тем что у жюри, то вот тогда он может оспаривать вердикт.
                            • 13 лет назад, # ^ |
                                Проголосовать: нравится -8 Проголосовать: не нравится
                              ==============================
                              Ну, верное понимание это то, которое приносит "Accepted".
                              Как видите, оно должно совпадать с пониманием жюри. Проблема в том, что жюри сформулировали свое понимание недостаточно ясно, за что пострадал рейтинг многих участников.
                              Я понял, что термин "верное понимание" надо было пояснить.
                              В общем, этот диалог ни к чему не приведет. Спасибо, что попытались разобраться.
                              Надеюсь, что существование таких же мнений опровергнет мнение Александра, что мое понимание - уникальное.
                              Ничего уже не изменить. Triple Fail :)
                              • 13 лет назад, # ^ |
                                Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
                                Дискуссия убегает вправо :)
                                Вообще, при противоречиях в формате инпута/аутпута и основной части я бы выбрал, все-таки, основную часть. Просто потому, что не первый раз примерно так и верно всегда описание в основной части.
                                P.S. в обсуждаемой задачи форматы читал мельком, диссонанс не возник и все сразу понял правильно.
                                P.P.S. согласен с мнением предыдущего оратора, ЛЮБОЕ неправильное понимание условия - камень в сторону жюри и авторов.
              • 13 лет назад, # ^ |
                Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
                Короче. Есть такой метод рассуждений - он нестрог и может иной раз приводить к ошибкам, поэтому я его терпеть не могу. И я бы предпочёл им не пользоваться, но, к сожалению, мы живём в таком мире, где ни на что никогда нет никаких гарантий. Поэтому с годами, и в частности с годами спортивного программирования, я научился кое-как его всё-таки использовать. Этот метод называется здравый смысл.
                Применение его к данной задаче выглядит так. Если требуется оптимизировать по одному параметру, а при прочих равных - по второму, то это одна задача. Если же требуется оптимизировать по двум разным параметрам - то это две задачи. На кой ляд, спрашивается, автор бы хотел, чтобы участники решали одновременно две разные задачи, да при этом ещё и упоминал эти два параметра в некоторой связке в центре условия?
                • 13 лет назад, # ^ |
                    Проголосовать: нравится +17 Проголосовать: не нравится
                  Здравый смысл?!! Ты пошутил?! Да там в задаче E Гондурас на тарелке размещался!!! Если руководствоваться здравым смыслом, то можно вообще сказать, что опыт за монстров в D2 не делится, а дается тому, кто нанес последний удар :)
                  • 13 лет назад, # ^ |
                      Проголосовать: нравится 0 Проголосовать: не нравится
                    Э, ну я же не говорю, что им надо злоупотреблять! Здравый смысл стоит использовать только тогда, когда бессильна логика.
                  • 13 лет назад, # ^ |
                      Проголосовать: нравится +6 Проголосовать: не нравится
                    ============================
                    "Да там в задаче E Гондурас на тарелке размещался!!!" - я плакал от смеха минуты четыре :D

                    Паша, ты как всегда на высоте =)
              • 13 лет назад, # ^ |
                  Проголосовать: нравится 0 Проголосовать: не нравится
                Позволю себе высказать пару мыслей, навеянных проблемой с немного противоречивым условием задачи "Герои". В некотором смысле это выводы для проблемсеттеров и тестеров.

                Что должно говориться в формате вывода? Помоему там должен быть именно формат вывода. Т.е. условие говорит что надо найти, а формат говорит как это вывести. Отсюда я делаю два вывода:

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

                2. Надо стараться вообще ничего существенного не писать в формате вывода. То есть там должны быть фразы типа: "Выведите одно число - ответ на вопрос задачи" ну или подобные вещи, никак не комментирующие что это за число. Ясно, что когда вывод сложный, то так просто описать не получится, но надо стараться.
                • 13 лет назад, # ^ |
                    Проголосовать: нравится 0 Проголосовать: не нравится
                  Ну... В данном случае нельзя было отделаться фразой вроде "ответ на поставленную задачу". Там два числа, не понятно, какое из них выводить первым. А вот если добавить какую-то конструкцию со словосочетанием "соответствующее ему", то вполне все может встать на свои места.
                  Если при вычитывании условия кто-то высказал замечание вроде "А тут точно так?", то не должно быть ответа вроде "Это и так понятно". Напишите еще раз (для особо одаренных, вроде меня - тупицы последнего) "Это именно так". Такой подход минимизирует вероятность двусмысленности.
                  • 13 лет назад, # ^ |
                      Проголосовать: нравится 0 Проголосовать: не нравится
                    Кстати, кто-нибудь из тех, кто регулярно ездит на финал, может объяснить, откуда взялась традиция отвечать "read the statement" на уточнение фактов из условия? В чем фишка?
                • 13 лет назад, # ^ |
                    Проголосовать: нравится +13 Проголосовать: не нравится
                  Извините, то встреваю, но дело в том, что я столкнулась с той же проблемой, что и Павел. Мне совершенно не понятно, зачем  писать такую огромную легенду и разбрасывать части условия по всему тексту. Так или иначе условие должно быть таким, чтобы можно было с первого раза понять, что от тебя требуется. У меня было три понимания задачи, первое ближе к верному решению, но не проходящее тесты из примера, второе как у Павла с WA , а третье истинное, найдя которое я аж вскрикнула. Ну зачем такое большое условие? Может если бы оно было поменьше, то не возникло бы таких трудностей с пониманием. Я, кстати, хотела задать вопрос, но при написании, вставила цитату  и она , даже в урезанном мной варианте, не вместилась в ограничение в 1000 символов. После трех-четырех попыток ужать фразу, я забила на вопрос (зачем так много букв?) потому что при следующем ужиме потерялся бы смысл. Уже после моего AC этот вопрос таки задали и сделали рассылку (в какой-то другой формулеровке). Лично я не настаиваю на том, чтобы убрали неудачные попытки, думаю, что многие по своему поняли задачу, а вы обработаете только наш случай. Но я думаю, что если автор признал, что хотел изменить ключевую фразу в условии, но ему сказали, что в этом нет необходимости, и если таки, вопрос был задан, пусть не Павлом и не мной, то стоит признать, что условие было составлено неудачно. Неужели так трудно признать, что контест не прошел без косяков?
                  • 13 лет назад, # ^ |
                      Проголосовать: нравится 0 Проголосовать: не нравится
                    Отвечу по порядку:

                    Неужели так трудно признать, что контест не прошел без косяков?

                    Нисколько не трудно. Более того, я это уже признал, да и Александр тоже об этом говорил.


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

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


                    После трех-четырех попыток ужать фразу, я забила на вопрос (зачем так много букв?) потому что при следующем ужиме потерялся бы смысл.

                    Ну вот тут я с вами совсем не согласен. Ну не может быть такого, что вы не смогли сформулировать то, что вам не понятно менее чем за 1000 символов. Зачем было вставлять цитату? Можно своими словами. Русский язык достаточно богат чтобы в этих рамках выразить такую мелочь...
                    • 13 лет назад, # ^ |
                        Проголосовать: нравится +5 Проголосовать: не нравится
                       мне просто было не понятно, как интерпретировать фразу из условия. Хотела так и сформулировать вопрос, когда вылетела ошибка я какое-то время пыталась вопрос откорректировать, 
                      потом забила, так как на контесте нужно на другое время тратить.
                    • 13 лет назад, # ^ |
                        Проголосовать: нравится +7 Проголосовать: не нравится
                      ============================================
                      На самом деле я понимаю, что Саше нравится писать длинные условия (это дает размахнуться фантазии) про (О, Господи!!!) Гондурас, наковальню, енота-полоскуна, боброжуя и веселую сгущенку, но на соревнованиях Codeforces это очень не в тему. Я видел отдельную тему, где все выражают свое недовольствие таким подходом. Наверное, Александру стоит предупреждать в предматчевом посте о том, что сегодня нас ждут огромные условия (которые уже заранее увеличивают вероятность двойственного понимания). А там уже дело вкуса: не нравится - не ешь.
                      А по поводу удаления отправок... Не парься, Маша. В одном из ранних раундов вообще была ошибка в авторском решении. Причем ошибка в том месте, на котором в условии сделан жирный акцент. Как результат, зашло несколько решений, в которых была допущена такая же ошибка. А правильные решения, в том числе решение Егора Куликова, упали на одном из тестов. Об этом трубили во все трубы, но администрация, как и в этом случае, наплевала на это. Даже время на это не трать.
                      • 13 лет назад, # ^ |
                          Проголосовать: нравится 0 Проголосовать: не нравится
                        ======================
                        Если имеется в виду CBR #42 и задача Гонка, то реджадж все-таки был произведен, правда с большой задержкой
                        • 13 лет назад, # ^ |
                            Проголосовать: нравится 0 Проголосовать: не нравится
                          ======================================
                          Ложка к обеду хороша. Я написал об этом в какой-то другой теме, и только потом на это обратил внимание случайно заглянувший представитель администрации.
                          Помимо этого была ужасная задача про букву А. В которой достаточно большая доля участников  не смогла угадать правильного понимания условия.
                          Там было написано вот так:
                          Два отрезка имеют один общий конец (назовем эти отрезки первым и вторым), а третий соединяет 2 точки на разных отрезках.
                          Как догадаться, что эти две точки должны быть концами третьего отрезка - ума не приложу. Это отправило меня прямиком к синему цвету. Администрация ничего и делать не стала, как обычно. Я проверил, до сих пор даже условие это корявое не поправили.
13 лет назад, # |
Rev. 5   Проголосовать: нравится 0 Проголосовать: не нравится
осознал вопрос)

13 лет назад, # |
Rev. 2   Проголосовать: нравится +6 Проголосовать: не нравится
Хочу задать вопрос, а вот когда кого-то хочешь взломать и жмёшь быстро на чьё-то решение, то вместо того что бы появлялось сразу само решение которое нужно ломать, можно увидеть протокол участника, типо вот такого 

Через пол миллисекунды появляется само решение которое нужно ломать. Так вот что означает вердикт тут "Полное решение"? :o)

  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Прошло претесты.
    На будущее: лучше делать скриншот не всего экрана, а вырезать кусок. На нетбуке кошмарно смотрится :)
    • 13 лет назад, # ^ |
        Проголосовать: нравится -17 Проголосовать: не нравится
      Я на ноутбуке и смотриться кошмар ;D
      Я не виноват что тут так всё плохо с изображениями! 
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    После того, как решение взломали, последняя попытка приобретает статус "Полное решение", но не жирным зеленым цветом (вероятно, недоделка авторов Codeforces). Но затем оно уже не тестируется. 

    P.S. Делайте скриншоты поменьше.
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
How do I see the standings for div 1? Can't find it...
13 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится
Задачи C и D надо было поменять местами по-моему
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    В D кодить по-больше, чем в C. Зачем их менять?
    • 13 лет назад, # ^ |
        Проголосовать: нравится +13 Проголосовать: не нравится
      Если дело только в размере кода, то задачи должны были идти в порядке B E A C D=)
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Вернее, задачи с очевидным решением надо располагать в начале по размеру кода, а потом все остальные.
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        даже Е B A C D
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
А когда можно будет посмотреть детальный отчет?
13 лет назад, # |
  Проголосовать: нравится +2 Проголосовать: не нравится
thanks for nice problems!
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
хмм .. может я не видел обсуждение выше, но мне кажется весьма актуальным вопрос о распределении рейтинга в первом дивизионе. Есть какие-то данные поэтому поводу ?
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    А что с распределением рейтинга?
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Ну людей в контесте ведь меньше участвовало. Меня все устраивает) 
13 лет назад, # |
Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится
По ходу контеста у меня возникла весьма странная и неприятная ситуация: 2 сабмита по задаче A получили ошибку времени выполнения на тесте 1. Код писался в VS, но отправка по привычке осуществлялась под GCC. В итоге, после долгого ломания головы я, ухвативши порядочно "минус-морали" и "минус-сабмитов" (которые, впоследствии, как минус не защитались) вспомнил о возможности запуска кода на стороне сервера. Предположив, что 1й претест = 1й тест в условии, мое решение (№398073) было протестировано под GCC и действительно, по непонятным причинам получало crash. Однако, под MS C++ на сервере оно нормально отрабатывало. После этого я, порядочно подумав и пересмотрев код, не нашел ничего лучшего как сделать сабмит на MS C++. И, вуаля, оно, как и следовало ожидать, прошло.

Уважаемые участники и администрация, хотелось бы узнать причины этих странных происшествий и, если ошибка кроется не в моем коде, то убрать ту часть штрафного времени с этого и следующих сабмитов, полученную из-за данного феномена. Спасибо.

Код:
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Выложите, пожалуйста, код на pastebin - разберёмся.
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Я бы не сказал, что строчка 
        #pragma comment (linker, "/STACK:16777216")
        является платформо и компиляторо независимой.

        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          Согласен, однако рекурсия отсутствует. Что еще интереснее, под моим GCC не падает.
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          codeforces.cpp:2: warning: ignoring #pragma comment 

          Вряд ли в ней дело.
          PS: у меня дома не падает
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          Эта строчка отыграла свое, как и оставшаяся часть моего C++-шаблона, на множестве контестов и онлайн-джаджей. Включая CodeForces.
          Так что жду комментов администрации, с большим желанием разобраться и тайной надеждой вернуть немного баллов :)
  • 13 лет назад, # ^ |
      Проголосовать: нравится +23 Проголосовать: не нравится

    В вашем коде проблема с vector<int> gr[3]. Вы объявляете этот массив локально, и считаете, что сразу после объявления там автоматически пустые vector<int>. На самом деле это не гарантируется. Это то же самое, что объявить локально int a[3] и рассчитывать, что там сразу нули. Если добавить в ваш код инициализацию массива пустыми векторами, crash исчезает.

    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      А какая разница массив объявляем или одну переменную? vector <int> v - всегда пустой массив. Или когда создаём массив не вызывается конструктор? У int нет конструктора, поэтому int a писать нельзя.
      • 13 лет назад, # ^ |
          Проголосовать: нравится +5 Проголосовать: не нравится
        У всех типов в С++ есть конструктор, в том числе и у int. Пример для наглядности: cout << int() << endl;
    • 13 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
      Позвольте с вами не согласиться. Для векторов, находящихся в массиве, всегда вызовется конструктор по умолчанию, вне зависимости от того где массив объявлен (когда он объявлен на стеке).
      Вот, кстати, по поводу месторасположения vector<int> gr[3]:

      1й код - расположен внутри solution() и вне for() - получает ACCEPTED:

      2й код - расположен внутри solution() и внутри for() - получает CRASH 1:

      Номера сабмитов: 402527 и 402545 соответственно. Объясните пожалуйста, чем в данном случае область видимости функции принципиально отличается от области видимости цикла?
      Заметьте тут же, что вызов gr[i].clear() производится на каждом шагу в обеих программах...
      • 13 лет назад, # ^ |
          Проголосовать: нравится +5 Проголосовать: не нравится
        When declaring a regular array of local scope (within a function, for example), if we do not specify otherwise, its elements will not be initialized to any value by default, so their content will be undetermined until we store some value in them. The elements of global and static arrays, on the other hand, are automatically initialized with their default values, which for all fundamental types this means they are filled with zeros.


        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          Это только для POD типов.  для всех остальных вызывается конструктор по умолчанию

          vector<int> gr[3]  - гарантирует обнуление и инициализацию 3х векторов.
          • 13 лет назад, # ^ |
              Проголосовать: нравится 0 Проголосовать: не нравится
            Пруфлинк? И тот клас что вы написали, между прочим, является POD.
          • 13 лет назад, # ^ |
              Проголосовать: нравится 0 Проголосовать: не нравится

            И всё-таки, пока не поздно, я перейду на белую сторону. Там дело не в конструкторе, и не в массивах (чтобы там не писали, но запуском можно убедиться, что конструкторы и деструкторы вызываются для элементов локальных массивов). Возможно, это глючная сборка MinGW (которую я порекомендовал для языка C++0x), возможно проблема с GCC 4.6 (я это проверю как перегружусь), а может мы все плохо знаем C++, и этому странному поведению есть разумное объяснение, которое нужно найти. 

            • 13 лет назад, # ^ |
                Проголосовать: нравится +8 Проголосовать: не нравится
              1. Немножко можно почитать здесь

              2. мой класс имеет конструктор -> он не является aggregate class -> он не является POD class type -> он не является POD type
              • 13 лет назад, # ^ |
                Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

                Длинное доказательство :), но даже здравый смысл говорит о том что вы правы! К сожалению, как я уже написал, проблема не в этом, здешний GCC вызывает конструкторы не POD-типов в локальных массивах.

              • 13 лет назад, # ^ |
                  Проголосовать: нравится 0 Проголосовать: не нравится
                Всё-таки это баг GCC.
            • 13 лет назад, # ^ |
                Проголосовать: нравится 0 Проголосовать: не нравится
              Никто С++ не знает, даже его основатель:). Проблема в том что те кто пишут среды для С++ пишут их по-разному, нет единого стандарта. Отсюда разное время работы в MinGW и VS, при том иногда отличающиеся в разы, отсюда разное понимание, что считать warning, error,(например vector<vector<int>> недопустим в гнушнике и спокойно глотается в вижаке) а что-"образцом правильного кода"(то есть не ловящего ошибки и предупреждения). Сюда можно добавить еще и разный размер long double и множество других-приятных и не очень-вещей.

              Если даже в таких достаточно важных вещах разработчики не сходятся, то уж в том как писать конструкторы-и вовсе не сойдутся.
              • 13 лет назад, # ^ |
                Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

                ====================================================

                Ну всё-таки международный стандарт С++ существует. Вижак глотает vector<vector<int>> потому что это фишка нового стандарта C++0x, GCC 4.3+ его также глотает с ключом “std=c++0x”. По поводу конструкторов, то что я писал – это самая настоящая глупость. Когда мы пишем a = b; для старого значения a вызывается деструктор, а после – оператор копирования, и никак иначе! Тогда если объекты не будут инициализированы во время объявления, для неинициализированных значений будут вызываться деструкторы при первом же присвоении. А long double по стандарту не меньше чем double (а double не меньше чем float), и может на разных компиляторах или архитектурах отличаться так как implementation-defined.

                PS: Баг исправили, код товарища SkorKNURE получает Полное решение .

  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Вроде бы где-то говорилось, что за ошибку на 1 претесте баллы не снимаются
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

А почему так пассивно плюсуем автора?

Кому-то не понравился контест?

З.Ы. считаю что в див2 было все отл. спасибо Александр

13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Why can't I register for practice nor submit the problems in the problemset? (I mean this contest only)
13 лет назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится
Is div 2 systest running in real time/replay mode? It's so slow =/
13 лет назад, # |
Rev. 3   Проголосовать: нравится +3 Проголосовать: не нравится
По-моему, замечательный раунд (div. 1) — и по организации, и по уровню задач. Спасибо авторам!
P.S. Обидно, конечно, что очевидная задача на инверсию стояла пятой (ну это, как говорится — сам дурак, читай все условия).
  • 13 лет назад, # ^ |
      Проголосовать: нравится +13 Проголосовать: не нравится
    Потратил 30 минут на неправильное понимание задачи B, обидно. Я конечно сам виноват, что сэмпл на бумажке не посмотрел и ненужных дебагом занимался, но всё же.
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      да, я тоже так тупил в этой задаче (
      ведь пришел же даже клар, что p и q могут быть нецелыми!! как я мог еще тупить? ))
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Вы в разных дивизионах были, ты говоришь о другой задаче:)
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          нет
          я же понимаю какие задачи совпадали в дивизионах!
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      А, целые/вещественные? Соглашусь, сам сначала прогрессию просуммировал. Когда не сошлось с семплом, заметил, что ответ для b = 2 меньше 3/5 и, мягко говоря, удивился) Такая вот рефлекс видеть только целые числа в задачах.
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Вот я так же. Потратил время, кинул её и стал писать С. Потом пришел клар и все встало на свои места. Повторюсь, это, конечно, во многом мои проблемы, но с условиями надо аккуратнее.
      • 13 лет назад, # ^ |
          Проголосовать: нравится +8 Проголосовать: не нравится
        Весьма сбивало то, что ограничения на а и  b --- целые, и, на мой взгляд, обозначения, обычно p и q --- используются для  целых чисел (например числителя/знаменателя дроби), конечно понятно, что это не правило --- при желании можно и комплексное чилсо буквой n обозначить...

        Как-то умудрился пропустить клар и весь контест фигней страдал=(
        • 13 лет назад, # ^ |
            Проголосовать: нравится +5 Проголосовать: не нравится
          Я тоже так подумал, и задал вопрос. Ответ получил не более чем через минуту.
        • 13 лет назад, # ^ |
          Rev. 3   Проголосовать: нравится +7 Проголосовать: не нравится
          Прошу сильно тапками не бить, но был ещё хороший способ понять, что p и q - вещественные %)
          Не увидеть ни слов о том, что p и q вещественные (кстати, а были ли эти слова в исходной редакции условия?), ни слов о том, что a и b - целые, попытаться глянуть за выяснением этого момента на пример инпута, но вместо этого посмотреть на аутпут и увидеть два вещественных числа %) И решить, что a и b сами по себе вещественные %)
    • 13 лет назад, # ^ |
      Rev. 3   Проголосовать: нравится +8 Проголосовать: не нравится
      Ладно, раз уж лишний пост образовался, добавлю что-нибудь. Например, можно еще порадоваться крайне удачным присказкам к задачам.
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Согласен. Хотя не очень понравилось, что почти ко всем задачам в формате входа был дан толстый намёк, на чём нужно взламывать)
    • 13 лет назад, # ^ |
        Проголосовать: нравится +3 Проголосовать: не нравится
      это очень спорный момент

      с одной стороны претесты должны покрывать существенную долю тестов, ибо тут ошибка достаточно критична - финальное тестирование проводится после раунда

      с другой стороны должны оставаться "взломные" места, иначе какой прок блокировать задачу, если все крайние случаи содержатся в претестах?

      вообще этот разговор поднимался не раз, но найти золотую середину путём обсуждений не удалось

      поэтому пошёл в дело эксперимент - какова будет реакция участников, если они будут знать часть информации о претестах?
      • 13 лет назад, # ^ |
          Проголосовать: нравится +5 Проголосовать: не нравится
        Идею описывать содержимое претестов считаю очень здравой.
        Например, была на недавнем контесте задача с таблицей Менделеева, которую нужно было вогнать в массив. Упоминание о том, что каждый элемент таблицы будет обязательно встречаться в претестах, позволяет уделить особое внимание алгоритму, а не копипасту и форматированию текста.
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Почему второй дивизион тестируется в реал-тайм режиме моделированием? оО
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Первый вообще-то тоже всегда так тестируется. ВНЕЗАПНО, да? =)
    • 13 лет назад, # ^ |
        Проголосовать: нравится +5 Проголосовать: не нравится
      Нет.

      Сейчас второй почему-то тестируется по принципу: 2 часа контеста - 2 часа тестирования, каждая отправка проверяется в ту самую минуту, в которую она была послана, считая от начала тестирования. Т.е. контест моделируется.

      На тестирование первого всегда уходило не 2 часа, а от силы полчаса, задачи быстренько тестируются все скопом.
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        А. Тогда извиняюсь, не понял вопроса.
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        хм, да вроде бы совсем не так с див2 контестом
        просто посылок в первые полчаса было очень много
        тестирование див2 закончено
13 лет назад, # |
Rev. 2   Проголосовать: нравится +5 Проголосовать: не нравится
Снег сегодня пошел... Первый минус у Геннадия. Прям не день, а одни внезапности =)
  • 13 лет назад, # ^ |
      Проголосовать: нравится +13 Проголосовать: не нравится
    Геннадий одержал минус. Всё ок.
  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится +22 Проголосовать: не нравится
    Неправильная формулировка =). Не "Первый минус у Геннадия", а "Окончательно зафиксировано первое рекордное достижение в количестве последовательных повышений рейтинга: 21 участие в контестах подряд". 
13 лет назад, # |
  Проголосовать: нравится +21 Проголосовать: не нравится
Зачем писать какие ограничения для данных на претестах?

В спешке в задаче с наковальней глянул на ограничения претестов ( "а" там было строго больше 0) вместо общих, и задача упала на тесте где а==0

:-((
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Hi,
DIV 2 - C

Test case
5
Troll likes Dracul
Anka likes Chapay
Cleo likes Anka
Chapay likes Cleo
Snowy likes Hexadecimal
222 400 400

why the answer is 89 5

what im getting is 222(Snowy), 400(Anka, Chapy, Cleo), 400(Hexadecimal, Troll, Dracul) => diff 89, likes 4.

what's wrong?
  • 13 лет назад, # ^ |
      Проголосовать: нравится +1 Проголосовать: не нравится
    because the likes must be maximal and here 5 is more that 4
  • 13 лет назад, # ^ |
      Проголосовать: нравится +6 Проголосовать: не нравится

    Snowy, Hex

    Anka, Chapay, Cleo

    Troll, Dracul

    gives 89, 5

    • 13 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
      Thx, I got it now.

      There may be few possibilities for min diff, I just took one with min value. That's really omg. :B

      got AC after considering this
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        I didn't solve it too, but with another reason: inaccurately read problem statement and didn't round down x/y, so found best case in floating numbers. Fail

  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Split them as (Snowy, Hexadecimal) (Anka, Chapy, Cleo) (Troll, Dracul)

13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Are the formulas used for calculating rating available anywhere?
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
I hope someone writes nice neat editorial for this round. Very eager to read about the probability of nature of roots of quadratic equation problem... (DIV2-D)
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
I have to ask: was the double entendre in the title (and description) of problem C present in the original Russian version too, or was that a bonus for those of us who read the English version?
13 лет назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

Может, в будущих подобных контестах лучше называть одни и те же задачи в разных дивизионах одинаковыми буквами (или начинать задачи 2 дивизиона с C или добавить буквы X,Y ко второму дивизиону)

Ну или называть задачи A1, B2 и т.п. - иначе будет возникать путаница в обсуждениях

13 лет назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится
Наконец-то в полку генералов прибавилось. Поздравляем vepifanov и hos.lyric!
=======
It's happened that to the regiment of generals some participants were added. Congratulations for vepifanov and hos.lyric!
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Problems are good.
Any trick on the Div-2 E. I try the DP solution but can not pass the 3rd test..
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Тесты из примера, кстати, не очень удачны. Мне кажется, стоило в задаче D сделать тест, разводящий правильное решение и решение, в котором горизонтали и вертикали перепутаны.
  • 13 лет назад, # ^ |
      Проголосовать: нравится -8 Проголосовать: не нравится
    я тоже был бы не против :)
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    по-моему, в этой задаче и так много хороших сэмплов, наглядно разобрано много случаев: 
    • когда нельзя собрать ковёр вообще; 
    • когда для поиска ответа используется утверждение 3, причём с рисунками; 
    • в этом же тесте n ≠ m - ещё одна проверка на нелепые ошибки
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Ну просто на мой взгляд тест на то, что надо вводить ручками и в чем легко ошибиться важнее всех тестов на крайние случаи, которые и так в каждой второй задаче появляются.
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Согласен. Я считаю что тесты на крайние случаи нужно оставлять уже на системные тесты, ну и на взломы соответственно. А претесты должны быть такими, чтобы поясняли правильность понимания задачи.
        • 13 лет назад, # ^ |
            Проголосовать: нравится +5 Проголосовать: не нравится
          ну дык они и поясняют правильность понимания =)

          в тесте 1 объясняется суть требования сборки #3, правильное его понимание вообще объяснено на рисунках

          тест 2 - чтобы без раздумий понять, что можно класть и горизонтально, и вертикально

          тест 3 объясняет, какие кости домино нельзя использовать

          этих тестов более чем достаточно для правильного понимания условия

          а вот учитывать все возможные неправильно написанные решения не обязаны ни претесты, ни уж тем более сэмплы
          • 13 лет назад, # ^ |
              Проголосовать: нравится 0 Проголосовать: не нравится
            А на мой вопрос ответить? Вот, посмотрим на задачу 71E Ядерный синтез. Там указано, что претесты содержат проверку всех элементов на то, что вы ввели их правильно.
            Мне кажется, что, если на задачу есть одна попытка и оценивается только полное решение, то это издевательство, не давать участникам возможность проверить данные, которые пришлось вводить ручками.
            • 13 лет назад, # ^ |
                Проголосовать: нравится -13 Проголосовать: не нравится
              в задаче 65E (а уж не 71E ;)) сказано "Для того, чтобы найти периодическую таблицу химических элементов, Вы можете использовать свою любимую поисковую систему"

              в задаче 69D div-1 мало того, что различных ситуаций может быть ровно 10, что в 10 раз меньше, чем в задаче 65E, так ещё и приведены картинки со всеми возможными вертикальными положениями:



              и горизонтальными положениями:



              вбить которые было делом минутной длительности

              я понимаю, что обидно не сдать задачу из-за такой глупости, но всё-таки мне кажется, что в этой ситуации нужно винить только себя
              • 13 лет назад, # ^ |
                  Проголосовать: нравится -10 Проголосовать: не нравится
                Да, я и виню только себя. И да, я их вбил за минуту. Я просто подумать не мог, что среди претестов не найдется ни одного, для которого критично перепутать горизонтальные и вертикальные местами. Если уж претесты вообще ничего не тестируют, может, взять за правило тестировать только на тестах из условия и еще одном?
                • 13 лет назад, # ^ |
                    Проголосовать: нравится +15 Проголосовать: не нравится
                  =============================================
                  что за субъективные нападки, преисполненные негативными эмоциями? 

                  посмотри сабмиты участников, попавших в топ-10 раунда:

                  vepifanov дважды получил WA на претесте 6
                  Zhukov_Dmitry получил WA на претесте 7
                  ivan.popelyshev дважды получил WA на претесте 4

                  твои слова о претестах - пустой звук, убедился?

                  ещё раз говорю: претесты - это претесты, а финальные тесты - это финальные тесты

                  если ты накосячил, то не нужно винить авторов в слабых претестах; нам ещё чего не хватало - пытаться предугадать все косяки участников и, в соответствии с этим, добавлять дополнительные тесты в претесты

                  претесты подготовлены таким образом, чтобы выдержать баланс взломов и отношение успешных сдач к общему числу посылок, поскольку именно сила претестов определяет эти два фактора
                  • 13 лет назад, # ^ |
                      Проголосовать: нравится 0 Проголосовать: не нравится
                    Да блин, кто ж их винит-то? Я же написал вроде, что виню только себя? Или я забыл написать? Спасибо за примеры о претестах, мне не пришлось их искать. Выходит, что неявные претесты ставят людей в разные условия указывая одним на ошибку и ничего не говоря другим? Или вы утверждаете, что претесты - это элемент случайности в олимпиаде, которому положено быть непредсказуемыми?
                    • 13 лет назад, # ^ |
                        Проголосовать: нравится 0 Проголосовать: не нравится
                      ===================================
                      неявные претесты ставят людей в одинаковые условия, это очень важный момент

                      другое дело, что одни косяки фиксируются претестами, а другие - нет

                      как было сказано в официальном блоге codeforces, "претесты лишь проверяют решение на разумность"; и я уверен на 100%, что твоё решение более чем разумно ;) скажу больше: претест #6 - идеальный тест "на разумность", поскольку он проверяет макстест на квадрате 4 × 4 - любое решение с кривым пониманием (да-да, именно пониманием) условия приведёт к неизбежному WA, поскольку просто так угадать ответ 29 мне кажется чем-то невероятным

                      содержимое претестов - это не элемент случайности, это просто информация, которой участники контеста не обладают, согласно правилам соревнований


                      P.S. пока перечитывал своё сообщение, подумал о том, как можно объяснить параметр "разумности" претестов: претесты должны отсекать решения с неправильным пониманием условия
                      • 13 лет назад, # ^ |
                          Проголосовать: нравится +3 Проголосовать: не нравится
                        ===================================
                        содержимое претестов - это не элемент случайности, это просто информация, которой участники контеста не обладают, согласно правилам соревнований

                        Ну с точки зрения участника это тот же датчик случайных чисел. Вообще он как-то устроен, и в большинстве случаев это простой линейный конгруэнтный генератор, но можно считать, что числа равномерно распределены. Так и тут. Вообще, есть подсказки: имя автора задачи, предыдущие обсуждения претестов на CodeForces... Но в целом, если решение (своё или чужое) прошло претесты и нужно тестировать (чтобы себя проверить или другое решение завалить), одни придуманные тесты — пустая трата времени (есть в претестах), а другие — нет.

                        Пусть есть два хороших теста по задаче. Первый есть в претестах, а второй — нет. Если я придумал первый, но не придумал второй — я фактически теряю время, проверяя на нём себя или других. Если я придумал второй, но не придумал первый — то время проходит с большей пользой. Это можно назвать нежелательным элементом случайности.
                • 13 лет назад, # ^ |
                    Проголосовать: нравится +5 Проголосовать: не нравится

                  Там не надо ничего вбивать -- проверяешь два верхних угла. Если только в одном О -- то в зависимости от того в каком и вертикальность фигурки.

                  Проверяешь верхний и левый центр, если в одном из них О -- то в зависимости от того в каком и вертикальность фигурки.

                  Иначе она работает в обоих направлениях.

                  • 13 лет назад, # ^ |
                      Проголосовать: нравится 0 Проголосовать: не нравится
                    Вообще-то в верхнем сообщении было написано, что проблема не в ошибке в описаниях а в перепутанных столбцах-строках.
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        А можно не вводить ручками, а посчитать количество клеток с буквой O, и проверить 2 клетки в случае спорной ситуации. Подойдут две первых клетки в верхнем ряду.
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          Это да, но я их вбил правильно. Я перепутал горизонтальные и вертикальные.
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Hi friends,
for problem A Div-2. i wrote this code

  1. #include<iostream>

  2. using namespace std;

  3. int main()
  4. {
  5.   int n,m;
  6.   cin>>n>>m;
  7.   int a[15]={2,3,5,7,11,13,17,19,23,29,31,37,41,43,47};
  8.  
  9.   for(int i=0;i<n;i++)
  10.   {
  11.     if(a[i]==n &&a[i+1]==m)
  12.     {
  13.       cout<<"YES";
  14.       return 0;
  15.     }
  16.   }
  17.  
  18.   cout<<"NO";
  19.   return 0;
  20. }
but it got failed on system test on this test case:
Test: #36, time: 10 ms., memory: 1356 KB, exit code: 0, checker exit code: 1, verdict: WRONG_ANSWER
Input
19 21
Output
YES
Answer
NO
Checker Log
wrong answer 1st words differ - expected: 'NO', found: 'YES'

but when i ran it on my PC output comes NO.
Whats wrong can anyone tell me??
Thanks
  • 13 лет назад, # ^ |
      Проголосовать: нравится +1 Проголосовать: не нравится
    your mistake is here:
    "for(int i=0;i<n;i++)"

    you should write something like this:
    "for(int i=0;i<14;i++)"

    it is out of boundary error

    and do not post your code here, please
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      oh.. thanks :)
      can anyone tell me where i can find editorial for this round?
      that would be very helpful
      • 13 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        I think it will be ready for hours

        now only russian tutorial is available, you may find it here and use google translator
  • 13 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
    too late :(
13 лет назад, # |
Rev. 6   Проголосовать: нравится 0 Проголосовать: не нравится
Same code, different result, why?
Is there something wrong with GNU C++ 4.6?
Because in my Code::Blocks 10.05 with mingw IDE on Windows, no RTE!
403082 Apr 20, 2011 10:40:16 AM hlahuhkln C - Heroes GNU C++ Runtime error on test 1 10 ms 1400 KB
403079 Apr 20, 2011 10:38:57 AM hlahuhkln C - Heroes MS C++ Accepted 30 ms 1400 KB
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    May be you have array of vectors in your function?
    vector<int> a[3];
    You know, if int a[3] defined in function it may not be filled with zeros. So, vector<int> may not be empty and even valid, so you try to do something with invalid vector. Of cause, it's RTE.
    May be Visual Studio initialize local variables, I don't know.
    • 13 лет назад, # ^ |
      Rev. 4   Проголосовать: нравится 0 Проголосовать: не нравится
      I got it!
      vector< vector<int> > g(3);
      Thank you!
    • 13 лет назад, # ^ |
        Проголосовать: нравится +32 Проголосовать: не нравится

      I don't think it's true. Rizvanov in his post above referenced to some site, not a C++ standard - that's not a good source.

      And it looks like it's a bug in compiler, but not a "feature" of language. I think it's a nonsense when you can't simply use local array of structures or classes - should we call placement-new for each of them? I don't think so, C++ is not Java :)

      I reported the bug yesterday, and today it was fixed (the problem was in optimizer - BTW all such programs crash only in O2, and this is another hint that this is a compiler problem, not a language's one).

      http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48695

13 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
Since  Mike has made some changes in Rating formula, it has become little bit difficult to get rating enhancement, you need to really perform well.

I think it is Quite Good in some sense.
  • 13 лет назад, # ^ |
      Проголосовать: нравится +1 Проголосовать: не нравится
    I understand (roughly) how the system works, however, I was quite surprised that by finishing 2nd (out of almost 1000 participants) I improved my rating by only 70 points. That's harsh. I hadn't participated for a while and had fallen to div2 because of the change in div1-div2 bound. So I expected this contest to be more a formality, but actually barely made it to div1. Had I failed a problem or two and I would have stayed in div2 despite being close to the bound.
    In general I think the system rewards low-rated coders who performed very good and average-rated coders who performed OK too much. It should be this way, but in smaller proportions.
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Yeah, I also thought that you people should have got more ratings.

    • 13 лет назад, # ^ |
        Проголосовать: нравится +6 Проголосовать: не нравится
      I just tried to find out what would have happened to your rating if you have done the same effort in DIV 1.

      Even if I don't count your hacks and solutions to question 1 and question 2.
      your rank would have been 58 with total points = 2186 .
      ( counting the last 3 probs. since they were same in both divs)

      And you just navigate to standings page of DIV 1 and try to see the rating increase of rank 62 ( pdwd )  , he has got total rating increase of 129 .

      And now I am entirely convinced that there is some flaw in formula for DIV 2.

      Because you performed better than  pdwd that day but he got better rating , that is totally unjustifiable.

      If you count the extra effort  you put in to hack and solving first two problems then , I think you should get even much more rating.

      Again if we take the fact the you were blue and pdwd was high in violet , then also your rating should increase even much more.

      So, overall your rating should have increased at-least 170 (if go by the kind of rating increase in DIV 1) .

      Sorry Mike , This is not good.  X-(

      • 13 лет назад, # ^ |
          Проголосовать: нравится +1 Проголосовать: не нравится
        It's hard to design a formula which sounds "reasonable" all the times.

        In this case, pdwd successfully beat many high rated coders in div 1, so he deserves large rating increase. Although  nvilcins may do the same thing if he completed in div 1, it's just an "if". The formula is not intelligent enough to consider his effort in a different situation, and I don't expect that a formula will do so.
        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          So, its better to have merged event.
          (or dont give common questions , so that we don't have any concrete proof to complain).

        • 13 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          You can have common ranking for common problems.
          And likewise rating for each problem and then weighted-average.
13 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
hi
I 've a comment  on  (Codeforces Beta Round #69 Div.2) I attend the contest and solve 2 problems . I 'm not generally rated on this contest (same rate since last one)and my chart wasn't updated to include this contest

I don't know what's the problem?

  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    That is the strangest thing I've ever seen at codeforces .

    I would also like to know the real reason.
13 лет назад, # |
  Проголосовать: нравится -7 Проголосовать: не нравится
А почему Первые десять мест в первом дивизионе и Первые три места во втором дивизионе?
Что за дискриминация?)
  • 13 лет назад, # ^ |
      Проголосовать: нравится +10 Проголосовать: не нравится
    Правильно. Должно быть Первые двадцать мест в первом дивизионе и Первое одно место во втором дивизионе
    • 13 лет назад, # ^ |
        Проголосовать: нравится +1 Проголосовать: не нравится
      Давайте вообще тогда выведем всех участников первого дивизиона а второй выводить не будем:)

      • 13 лет назад, # ^ |
          Проголосовать: нравится +1 Проголосовать: не нравится
        Первое место второго дивизиона, обычно, это будущий участник первого. Надо знать соперников :)
        • 13 лет назад, # ^ |
            Проголосовать: нравится -8 Проголосовать: не нравится
          А тут что, еще и второй дивизион есть?! :)
          • 13 лет назад, # ^ |
              Проголосовать: нравится +4 Проголосовать: не нравится
            Как будто вы там не были? ;)
            • 13 лет назад, # ^ |
                Проголосовать: нравится 0 Проголосовать: не нравится
              Да, жаль, что первый тур сразу div1 не играл.
              • 13 лет назад, # ^ |
                  Проголосовать: нравится +4 Проголосовать: не нравится
                Это не лично к Анонимусу коммент, это ко всей этой ветке.
                Вы посмотрите на этот график рейтинга. И пусть хоть кто-нибудь попробует сказать, что это менее труёво, чем сразу же быстрый взлёт в топ. Тут видно: чувак качался... и качался... и КАЧАЛСЯ... Ещё и TCO потом выиграл...
                • 13 лет назад, # ^ |
                    Проголосовать: нравится 0 Проголосовать: не нравится
                  Не совсем. Не учитываешь то, в каком возрасте он начал. Разумеется, большинство будущих крутанов не сразу станут таргетами, когда зарегистрируются на топкодере в 13 лет.
            • 13 лет назад, # ^ |
                Проголосовать: нравится -10 Проголосовать: не нравится
              Посмотри внимательно на его график. Не был.
              • 13 лет назад, # ^ |
                Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

                Посмотрел :)

                Отсортируй раунд #8 по дивизиону #2 ;)

                Все в первый раз там выступают...

          • 13 лет назад, # ^ |
              Проголосовать: нравится 0 Проголосовать: не нравится
            да есть; особенно сильно это ощущалось в этом раунде ;)
13 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Div I, Prob D - I tried hard. But i fail to understand why the 4th picture in sample test case 1 is said to be incorrect. From what i understood, all the horizontal and vertical layouts satisfy the given constraint. It will be great if someone could clarify.
  • 13 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Take a look at the third condition:
    "if there is a horizontal domino chip with its left half in column j then there are no horizontal domino chips with their left halves in columns j - 1 or j + 1. "
    It's not equal to the second one.
    • 13 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Oh, i see. So it means, we cannot have a horizontal chip at columns j-1 or j+1 irrespective of row number. I don't know if it was evident enough by the problem statement to other coders, but i feel that this clause("no horizontal chip in column j-1 or j+1 regardless of row") should have been more explicit.

      Anyways, thanks a lot for clarification.
»
9 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Почему в старых контестах (например, в этом) нельзя посмотреть тесты?