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

Автор HolkinPV, 14 лет назад, По-русски
Доброго Вам утра, дня, вечера, ночи.
Приветствуем Вас на прекрасном рандомизированном контесте, который подготовила для Вас команда Саратов СУ 3 (Давтян Эдвард, Холкин Павел, Кудряшов Игорь). Сегодня вам предстоит поближе познакомиться с Валерами и Валериями и помочь им во всем, чего бы они не попросили. Надеемся на то, что соревнование Вам понравиться, ведь мы очень старались. Благодарим за помощь в подготовке контеста Артема Рахова, Юлию Сатушину и Валерия Дмитрия Матова. Кроме того отдельное спасибо компании ВКонтакте.

История нашей команды началась в этом году в летней школе "Дубки" и едва там не закончилась. Нас спасли Петрозаводские сборы, на которые мы и уехали из "Дубков". Как вы могли заметить по предыдущему предложению, у нас в команде два капитана: один капитан и один Кэп (всего два). Но несмотря на это, мы очень дружная и серьезная команда и у нас очень хорошо развит командный дух. Тем временем до начала соревнования остается совсем немного.

Всем участникам мы желаем успехов и высокого рейтинга!
  • Проголосовать: нравится
  • +41
  • Проголосовать: не нравится

14 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
Желаю высокого рейтинга!
14 лет назад, # |
  Проголосовать: нравится +4 Проголосовать: не нравится
Удачи всем  !!!!
Высокого рейтинга !!!!
14 лет назад, # |
  Проголосовать: нравится +15 Проголосовать: не нравится
А че без меня фотка?=)
14 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
Удачи всем !!!
14 лет назад, # |
Rev. 2   Проголосовать: нравится -13 Проголосовать: не нравится
Удалить комментарий


14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Участники первого дива могут взламывать решения второго ?
  • 14 лет назад, # ^ |
      Проголосовать: нравится +6 Проголосовать: не нравится
    Да. Главное чтобы были в одной комнате.
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Я не мог взламывать чужие решения соседов по комноте даже если заблокировал задачу. Выводит вместо кода чё-то чёрное.
14 лет назад, # |
  Проголосовать: нравится -12 Проголосовать: не нравится
скажите а в задаче В точно стоят чекеры?
  • 14 лет назад, # ^ |
      Проголосовать: нравится -11 Проголосовать: не нравится
    у меня тоже возник этот вопрос(((
    по-моему в В неоднозначность в условии...
    ab
    ba
    2
    a b 2
    b a 8
    правильный ответ 4 или 10?
    • 14 лет назад, # ^ |
        Проголосовать: нравится -14 Проголосовать: не нравится
      у меня 4 выводит а какой на самом деле ответ незнаю
    • 14 лет назад, # ^ |
        Проголосовать: нравится -11 Проголосовать: не нравится
      у меня на 1 тесте ВА выдаёт хотя на все тесты примера выдаёт такойже ответ что и в примерах.
    • 14 лет назад, # ^ |
        Проголосовать: нравится -11 Проголосовать: не нравится
      но в 1 тесте выдаёт не 'x' a 'a' поэтому незнаю правильный ли у них чекер
    • 14 лет назад, # ^ |
        Проголосовать: нравится -10 Проголосовать: не нравится
      и всётаки чекеры у вас неправильно стоят. У меня ВА1 если выводит не uxyd и ВА 7 если выводит вместо x а так что проверьте плиз чекеры
14 лет назад, # |
  Проголосовать: нравится +12 Проголосовать: не нравится
Какие сегодня суровые претесты)
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
а ты здал задачу В?
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
В условии неоднозначно написано.Если мы  можем менять a на  b то можем ли мы менять  b на a?
  • 14 лет назад, # ^ |
      Проголосовать: нравится +4 Проголосовать: не нравится
    "разрешено заменить символ Ai на символ Bi в любой из строк"
    "В следующих n строках заданы два символа Ai и Bi, (...), означающие, что разрешено заменить символ Ai на символ Bi"

    Где здесь неоднозначность?
14 лет назад, # |
  Проголосовать: нравится +3 Проголосовать: не нравится
Буду очень признателен за претест 7 после окончания контеста :)
  • 14 лет назад, # ^ |
      Проголосовать: нравится +3 Проголосовать: не нравится
    Забыл сказать, что имеется ввиду задача B.
    • 14 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится +1 Проголосовать: не нравится

      Пусть в строке 1 первая буква а, во второй б.

      И есть правила например такие

      a c 1

      b d 1

      d c 1


      а - > c   и  b -> d -> c

      Понятно?)

      • 14 лет назад, # ^ |
        Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
        <скрип зубами> Д-д-а-а.. </скрип зубами>
        а транзитивность переходов я учел Флойдом
        • 14 лет назад, # ^ |
            Проголосовать: нравится +1 Проголосовать: не нравится
          Я только через полтора часа после начала додумался )
          • 14 лет назад, # ^ |
              Проголосовать: нравится +1 Проголосовать: не нравится
            искренне поздравляю!)
            а я думал над ней около 1 ч 50 мин, всматриваясь во все возможные опечатки, которых там не было)
      • 14 лет назад, # ^ |
        Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
        так же нужно не забывать про Дейкстру, ведь возможна и такая схема:
        a -> d -> e -> c
        b -> f -> c.
        Ну про это уже выше написали :)
        • 14 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          да а я так и недодумался что такое может быть.Хорошая задача получилась.Нетакая простоая как кажеться
      • 14 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        ты про что говоришь? Тоесть может быть средняя между буквами операция?Как бы вначале меняешь на с а потом с на  b или как?
        • 14 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          Сначала в первой строке меняешь а на с, потом во второй б на с.
        • 14 лет назад, # ^ |
            Проголосовать: нравится +1 Проголосовать: не нравится
          да, здесь флойд заходит оч хорошо, т. к букв <= 26.
14 лет назад, # |
Rev. 2   Проголосовать: нравится +5 Проголосовать: не нравится
лейтенант jaamaa жжот +22 / -2

  • 14 лет назад, # ^ |
      Проголосовать: нравится +16 Проголосовать: не нравится
    Опять читеры взялись за дело.
    Моя версия развития событий.
    Два знакомых чувака сговорились и решили подзаработать очков.
    Один перепосылает неправильное решение, а другой его взламывает, и так до бесконечности.
    Правильно, ведь мозгов много для этого не надо!
    Этот Jaamaa известный читер.
    На ТопКодере у него ник D.Jaamaa.
    Смотрите, что он вытворял в 483 СРМе.
    Как супермен решил 1ую и 2ую задачу за 18 и 19 секунд соответственно.

    В первом диве у него сообщника, видимо, не нашлось, и вчера все встало на свои места.
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Его, оперативно убрали - в начале систеста уже не было
    • 14 лет назад, # ^ |
        Проголосовать: нравится +2 Проголосовать: не нравится
      Или даже не 2 чувака, а 1
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      они ещё и шарщики))) сдесь им пошарило быть в одной руме))) не всегда же так бывает)))
      • 14 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Я и не подумал об этом вначале.
        Тогда я готов согласиться с Натальей, что Jaamaa и abcd - один и тот же человек.
        • 14 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          Вероятность попадания юзеров в одну комнату не зависит от того, один и тот же это человек или нет =)
          Хотя возможно, он зарегил 20 ботов abc, abcd, abcde и т.д. =)
        • 14 лет назад, # ^ |
            Проголосовать: нравится +2 Проголосовать: не нравится
          И как это поможет оказаться в одной комнате?
          • 14 лет назад, # ^ |
              Проголосовать: нравится +5 Проголосовать: не нравится
            Это помогает нарегистрировать 100500 виртуалов ;) И не лень же людям такой фигней страдать...
            • 14 лет назад, # ^ |
                Проголосовать: нравится 0 Проголосовать: не нравится

              Умный человек. Он вот на скорость валит решения, а я вообще не разобрался, где и как это делать =(

              • 14 лет назад, # ^ |
                  Проголосовать: нравится 0 Проголосовать: не нравится
                Ctrl + клик по ячейке, где обозначены баллы участника, которого мы хотим поломать по задаче, которую мы хотим поломать.
                Потом надо ввести либо тест, либо генератор теста.
                Нужно иметь Flash 10+
                • 14 лет назад, # ^ |
                    Проголосовать: нравится 0 Проголосовать: не нравится
                  хм, я так и нажимал, однако у меня открывалась просто история по задаче у этого человека. видимо дело в отсутствии последнего флэша. Спасибо за пояснение =)
          • 14 лет назад, # ^ |
              Проголосовать: нравится +5 Проголосовать: не нравится
            Принцип Дирихле: если у нас n комнат, то достаточно зарегать n+1 бота, чтобы хотя бы два из них обязательно оказались в одной комнате:)))
            • 14 лет назад, # ^ |
                Проголосовать: нравится 0 Проголосовать: не нравится
              Ситуация выглядит странно. Этот самый Jaamaa уже несколько раз участвовал под этим ником.
            • 14 лет назад, # ^ |
                Проголосовать: нравится 0 Проголосовать: не нравится
              это чтоб качать бота. Но качать то хочется себя :)
14 лет назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

Что-то у меня траблы со взломом.

Пишет посылка уже взломана, хотя 100 раз обновлял комнату, смотрел историю кода, там никаких взломов не показано.

У кого-то были такие проблемы?

Может из-за того что в моём тесте 20000 чисел? через Ctrl-C - Ctrl-V вбил, так как генератор не удалось отправить((.

14 лет назад, # |
  Проголосовать: нравится +12 Проголосовать: не нравится
Когда открывал коды, то очень часто код не появлялся, была пустая страница.
  • 14 лет назад, # ^ |
      Проголосовать: нравится +3 Проголосовать: не нравится
    Аналогичная проблема.
  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    У меня так происходило, если до этого я смотрел другой код.
    Т.е. первый раз после перезагрузки страницы всё работало.
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
У меня тоже была пустая страница один раз. Кроме этого, я не успел попытаться сделать взлом потому, что сервер был слишком занят. Это понятно, CF все еще beta, ну я надеюсь что сейчас, когда ВК спонсор CF, вам удасться все эти штуки исправить.
14 лет назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится
А что сегодня такое с занятостью сервера?
Server is too busy now.
Не только сейчас, но и в конце кодинга были такие же баги, не получилось загнать задачу.
Вроде, в 28ом матче участвовало больше народу, но багов не было.
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
В C я написал дерево отрезков (да, наверняка тупое решение и сейчас свалится); сложность как бы O(n log n), но на самом большом тесте (100000 1000-ч) невероятно тормозило. В чём может быть причина? Не могу понять :/
14 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
Is a tutorial available for this contest?
//It's funny! I know how to solve all problems except B!
  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    I didn't participate, but just read B. Did you understand it as, 'we need to change all occurrences of c1 to c2 ? '. Its just one character change at a time. First thought is.. a simple Floyd on 26x26 matrix to find cost[x][y] -> minimum cost to make x & y characters same. I hope this works.
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      I also thought that but I think we need to verify if we can transform A -> X, B->X if cost[a][x] + cost[b][x] is less than cost[a][b].
  • 14 лет назад, # ^ |
    Rev. 6   Проголосовать: нравится 0 Проголосовать: не нравится
    I also want to know the spected solution for problem B.
    I did a Floyd-Warshall from all letters to have the minimum cost for each pair, then for each char C in the first word and D in the second word I take the min(graph[C][k] + graph[D][k]), k being all letters from 'a' to 'z'.

    What is wrong in this idea?
    ---
    Fixing: I am sorry, my problem was Accepted in the contest. I thought I won a "wrong answer" but it was correct.
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      You probably mean min(graph[C][k], graph[D][k]).
      • 14 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Yes! You got it.
        • 14 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          i did it the same way.  but on pretest 7 it fails i cant' get what's my problem here is my pseudocode.
          if (length1!=...2) print -1;
          for (i=0;i<length;i++)
           min=min(a  (s1[i]   ,s2[i]) ; a(s2[i], s1[i])
           if min = a  (s1[i]   ,s2[i]) temp = s2[i];
           (for q='a' to z)
           if a( s1[i], q)+ a(s2[i],q) <min then{ min =a(s1[i], q)+ a(s2[i],q;) temp=q; 

          if min== 200 ( initally array is filled  200) print -1;
          s1[i]=temp;
          res+=min;
          }


14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Бедный сервер, несладко ему сегодня пришлось:)
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
I got a presentation error on problem B for test 38. Can someone tell me why?
I have used a combination of printf and cout. Will that be a problem?
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Кто-то подскажет тест №9 по задаче B?
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
А что особенного у претеста №3 на задачу D?
14 лет назад, # |
  Проголосовать: нравится +15 Проголосовать: не нравится
Отлично, 255-ое место. В следующий раз целюсь на 127-ое.
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Ух ты, как рейтинг у лидеров скакнул. Случайно не поменяли ли константы в рейтинге?
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
What's the test case 16 of problem C...
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Можно тест 11 задачи А. Спасибо
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Нашел классную багу, отмотайте в этом комментарии историю назад и смотрите что происходит с ответом на него
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Я единственный такой наивный мальчик, который писал LCA в D? =)

Хоть оно и прошло, но все же можно было обойтись куда более простым решением =( Не подумал я, что на этом серваке 1000 * 100000 прокатит. Где вообще можно характеристики системы глянуть? И описалово для компиляторов и все такое. И как например чужие решения валить? Я видимо совсем от жизни отстал, что не разобрался на контесте. Вот просто не нашел, как просмотреть чужое решение, и все тут.

  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Нет, не единственный :) Все-таки где-то глубоко сидит, что решения >10^7 никогда не проходят :)
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Ну а в итоге мое решение работает дольше лобового из-за лишних выделений памяти и всяческих рекурсий. Обидно даже. Столько кода, столько штрафа, столько дебага. А в итоге надо было не выпендриваться, а писать по-человечески... Все гениальное просто, пора уже вбить себе это в голову и придерживаться этого правила. И, кстати, ответов на вопросы мои ты не знаешь, случаем?
      • 14 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Когда сабмитишь задачу и она успешно проходит претесты, ты можешь ее заблокировать, нажав на замочек возлее ее имени в списке задач. В этом случае ты можешь смотреть и валить чужие сабмиты по этой задачи, но ресабмитить ее самому уже нельзя. А чтобы посмотреть чужой сабмит надо зайти в список участников своей комнаты и даблкликнуть на квадратик, отображающий чей-то сабмит по этой задаче (там, где пишутся очки). Насчет описалова системы, вот FAQ.
  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Вот эта задача заходит за квадрат: http://codeforces.net/contest/4/problem/C
    5*10^9 сравнений строк длины 32 почему-то выполнились за 4.4 секунды
    • 14 лет назад, # ^ |
        Проголосовать: нравится +3 Проголосовать: не нравится
      Все более актуальным становится вопрос о характеристиках тестирующей системы.
  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Я тоже lca написал :))
  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Привет, Антон. Сто лет тебя не видел. 
    Нет, ты - не единственный. Я тоже написал LCA binary uplifting'ом. Мне это решение показалось наиболее очевидным. На топкодере была подобная задача с меньшими ограничениями и требовалось посчитать что-то другое. Но идея LCA там тоже была применима. Тут все немного сложнее, но в целом задача чем-то похожа.
    Чтобы не писать два поста: в задаче C я написал линейное решение без всяких умных структур данных. Подобное решение уже описано в этой теме.
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      А как расшифровывается LCA? Слишком много вариантов предлагает гугл, трудно сориентироваться)
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Привет, Паша =) Да я же забросил это дело. Тут надо было поучавствовать, чтобы для молодых разбор провести. Все же полгода без решения задач на мне сказались =( Хотя надо заметить, что я поспокойнее стал решать и вести себя во время контестов, не торопился даже. А ты, я смотрю, молодец, растешь =) Думаю, тебе вполне по силам поехать на финал в этом году, ну и по Сибири занять 1е место, обойдя НГУ, хотя это будет тяжко =) А я уже не тот =) Вот, в лца натупил, за 1 секунду до конца только сдал =)
      • 14 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        Спасибо. Да, я тоже не тороплюсь на CodeForces, отношусь как к игре. Сидел, аккуратно писал задачи, тестил на парочке придуманных тестов и отправлял. Уже три или четыре раунда по этим правилам все задачи, которые посылаю заходят с плюса. Куда торопиться-то? Я даже пару раз отвлекался чтобы посмотреть что происходит в таблице, хотя на ACM контестах я себе такого не позволяю.
        А про полуфинал... Пусть время покажет. Да, по Сибири сейчас будет борьба трех ВУЗов: Novosibirsk SU, Tomsk SU, Tomsk PU. На интернет-туре ВСО мы победили, в следующем контесте можем проиграть. Главное, делать все, чтобы быть как можно выше.
        P.S. В Ижевске без тебя было заметно скучнее :)
  • 14 лет назад, # ^ |
    Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

    А 1000*100000 проходило? Я например побоялся писать. Кроме LCA работало битовое сжатие. Для каждой точки захраним в каких окружностях она лежит и проксорим для ответа на запрос. Итого 1000*100000/32.

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

       А как тогда посчитать количество единичных битов?

      Нам ведь нужно просмотреть все 1000 бит?

      • 14 лет назад, # ^ |
        Rev. 2   Проголосовать: нравится +3 Проголосовать: не нравится
        Сделать ещё один предподсчёт cB[1<<16] - cB[i]  количество бит в числе i, если нам нужно количество бит в числе a => cB[a&((1<<16)-1)] + cB[a>>16] - ответ
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      10^8 элементарных операций работают меньше секунды)
      заходило с запасов в 5 - 6 раз
14 лет назад, # |
Rev. 6   Проголосовать: нравится +4 Проголосовать: не нравится
Поскольку тут прозвучали идеи относительно решения задачи C, предложу-ка и я свое решение (линейное) :)
 Идея в следующем:
1. Если искомые префикс и суффикс пересекаются, то общая их часть остается с искомым знаком, и следовательно этот случай эквивалентен случаю когда взяты те же суффикс и префикс, но без общей части, например:
(s1 [s2 )s3 ] эквивалентно  (s1)s2[s3] (s1,s2,s3 - некоторые подпоследовательности).
2. Пусть сумма последовательности элементов A1 .. An равна S. Тогда при инвертации знаков получаем -A1, -A2 .. -An, а сумма соответственно изменяется на -S, то есть сумма чисел на отрезке при инвертации просто изменит свой знак.
3.Исходную задачу можно рассмотреть в таком ракурсе: нужно выбрать из последовательности непрерывную подпоследовательность (ту, что останется между префиксом и суффиксом), а вне ее инвертировать все числа. Тогда если сумма чисел всей последовательности равна S, а сумма выбранной подпоследовательности S1, то итоговая сумма даст -(S-S1) + S1 = 2*S1 - S  -  это и есть та самая величина, которую нужно максимизировать. S- постоянная, => нужно максимизировать S1, т.е. найти в заданной последовательности непрерывную подпоследовательность с максимальной суммой, а это делается линейно:
mx = 0;
for(i=0;i<n;++i)
{
sum += a[i];
if(sum < 0)
sum = 0;
mx = max(mx, sum); // исправил :)
}
Hope this will be useful :)
  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    я аналогично делал, только наворотил чуть побольше лишнего. эт, у тебя в коде не Cur, а sum наверное все же? =)
    • 14 лет назад, # ^ |
      Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится
      Ой, действительно. Эдитал эдитал, да не доэдитал :D
      UPD: во, нашел кнопочку "редактировать". отредактировал.
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
On problem B what is the expected answer for the input:
aaaa
bbbb
4
a b 1
a b 2
a b 3
a b 4
is it:
4
bbbb
or
10
bbbb
14 лет назад, # |
  Проголосовать: нравится +1 Проголосовать: не нравится
Можно тест 10 на B ?
  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    У меня был неверный ответ на этом тесте из-за того, что ошибся во Флойде.
    for (size_t i = 0; i < LETTER_CNT; i++)
    for (size_t j = 0; j < LETTER_CNT; j++)
    for (size_t k = 0; k < LETTER_CNT; k++)

    Неправильно:
    ranges[i][j] = Min(ranges[i][j], ranges[i][k] + ranges[k][j]);

    Правильно:
    ranges[j][k] = Min(ranges[j][k], ranges[j][i] + ranges[i][k]);
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
What is the test input data of test 5 (problem C)?
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
On problem B,I have used :
// in the main function
if(strlen(sa)!=strlen(sb)){
       puts("-1");
       return -1;
}

Unfortunately, my code is always getting Runtime Error for test 3.
However, if  "return 0" replace "return -1", I get Accepted.
Why?
sorry for my poor English!Thanks!
  • 14 лет назад, # ^ |
      Проголосовать: нравится +7 Проголосовать: не нравится
    You must always return in main function 0, and write anwer in console\file, because if you return non-zero value in main function, test system may think that you program crash with runtime error.
14 лет назад, # |
Rev. 2   Проголосовать: нравится +8 Проголосовать: не нравится
K (the number of queries) in problem D can be larger.
In that case, O(MK) solution will get TLE, and problem D can be a bit harder to get accepted.
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Можно посмотреть претест 5 по задаче E, please?
  • 14 лет назад, # ^ |
      Проголосовать: нравится +5 Проголосовать: не нравится
    3 2 1
    ajjkeczpyzfplikjfj
    jwvxmmyvcbadixxi
    sinbirqrkwodoouanvjklcgqh
    1 1 1
    18:08-18:17
    20:37-21:20
    22:20-22:21
    22:48-22:51
    ajjkeczpyzfplikjfj 1 00:02 178
    jwvxmmyvcbadixxi 1 00:02 188
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      Спасибо, Эдик! Это надо же мне было в такой задаче, где в 109 мест можно было набажить, перепутать n и m :)
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
I noticed some of the scores are shown in blue after the final tests. Any ideas what does it mean?
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Скажите тест 3 на задачу D, пожалуйста.
  • 14 лет назад, # ^ |
      Проголосовать: нравится +3 Проголосовать: не нравится
    2 10 5
    -5 2
    5 -2
    10 0 0
    11 0 0
    12 0 0
    13 0 0
    1 5 -2
    2 5 -2
    3 5 -2
    4 5 -2
    4 -4 0
    1 -5 2
    1 2
    2 1
    1 2
    2 1
    1 2
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Can anyone plzz tell what problem c meant .. i couldnt understand it ..:(

thanks in advance
  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    I can't understand it too!
  • 14 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится
    Give you a sequence with integers,choice one prefix and one stuffix (each of them maybe empty) to make the sum of the sequence MAXIMUM by mult each of the prefix and stuffix `s element with -1;
    Print the maxSum;
    PS: Sorry for my poor English...
    • 14 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится
      plzz explain with a test case..
      • 14 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится
        you are given a sequence, you take a prefix and suffix. for all numbers in the prefix and suffix, for  multiply all numbers in prefix and suffix by -1. so for test case:
        3
        -1 -2 -3
        there are many possible answers:
        (1) -1 -2 -3 sum= -6 (here the prefix is empty and suffix is empty)
        (2) -1 -2 3 sum=0 (here the prefix is empty and suffix is {-3}, multiply by -1 become  {3})
        (3) -1 2 3 sum=4 (here the prefix is empty and suffix is {-2 -3}, multiply by -1 become { 2 3} )
        (4) 1 2 3 sum=6 (this is the maximum possible answer, prefix is empty and suffix is {-1 -2 -3} multiply by -1 become {1 2 3})

        etc
        • 14 лет назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится
          typo:
          *for all numbers in the prefix and suffix,  multiply all numbers in prefix and suffix by -1. so for test case:
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
During the contest I coded wrong solution for B in Java, I didn't analyze the problem very well, but after the contest I tried the problem with the right solution in Java. I got Time Limit Exceeded. I tried every possible optimization in order to pass the test 26, but I couldn't manage it. I guess the reading input was taking the longest time. I used
BufferedReader br = new BufferedReader(new InputStreamReader(System.in);
Also, I tried reading the string byte after byte with using only InputStreamReader, but it was still TLE...
In the end I just copied my code in c++, changed some syntax in order to work with c++ and I got Accepted.

The thing I like to ask is whether some more experienced Java coder can tell me what is the most efficient reading input structure to use. I saw that there are accepted solutions in Java so every hint is welcomed.

Thank you in advance.
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Можно тест 4 на E пожалуйста?
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
Hi! I did problem D but with a rather difficult solution. Can someone give me his/her solution or the official solution?
14 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится
What is the test case 6 in problem E?
Test case 1 in final test of problem E is same as example test 1. Right or wrong?