When submitting a solution in C++, please select either C++14 (GCC 6-32) or C++17 (GCC 7-32) as your compiler. ×

tourist's blog

By tourist, history, 6 years ago, translation, In English

Hello 2018!

If you're still thinking what to do on the eighth day of year 2018, pay attention! The first round for both divisions of the new year starts on January 8 at 17:35 Moscow time (what about other timezones?).

Four important components of Hello 2018 will be the same as in Good Bye 2017:

  • Div1 + Div2 combined
  • 8 problems
  • 2 hours 30 minutes
  • Rated

But there will also be a substantial difference:

  • Different problems

The problems of this round have been proposed and prepared by YakutovDmitriy, budalnik and myself.

Thanks to everyone without whom this round wouldn't be possible as well: AlexFetisov, Golovanov399, KAN, MikeMirzayanov, PavelKunyavskiy, qwerty787788, VArtem, winger.

Good luck!

Scoring distribution: 500 — 750 — 1000 — 1250 — 1750 — 2250 — 3000 — 3500.

Problem tutorial can be found here.

Congratulations to the winners!

  1. Um_nik
  2. desert97
  3. yosupo
  4. dotorya
  5. zeliboba
  6. FizzyDavid
  7. Endagorion
  8. .o.
  9. SpyCheese
  10. Kostroma
Announcement of Hello 2018
  • Vote: I like it
  • +2848
  • Vote: I do not like it

| Write comment?
»
6 years ago, # |
  Vote: I like it +175 Vote: I do not like it

The difference is pretty substantial and unique.

»
6 years ago, # |
  Vote: I like it +58 Vote: I do not like it

How sweet we have tourist as a contest writer. Looking forward to the contest.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it -66 Vote: I do not like it

    Yeah thanks to him we have the first hello contest of the whole time

»
6 years ago, # |
  Vote: I like it +260 Vote: I do not like it

Now I have a legitimate reason to skip school.

»
6 years ago, # |
  Vote: I like it +409 Vote: I do not like it

Wow, wasn't expecting a round with different problems, you guys are full of surprises!

»
6 years ago, # |
Rev. 3   Vote: I like it +50 Vote: I do not like it

i can see contestRegistrants in Hello 2018 > Goodbye 2017

UPD: and most of them will be Legendary grandmaster

»
6 years ago, # |
  Vote: I like it +543 Vote: I do not like it

And Thanked Mike :D

»
6 years ago, # |
  Vote: I like it -13 Vote: I do not like it

WoW , Contest writer tourist , eagerly waiting for the contest.

»
6 years ago, # |
  Vote: I like it +46 Vote: I do not like it

Registration goal-10k :-)

»
6 years ago, # |
  Vote: I like it +590 Vote: I do not like it

»
6 years ago, # |
  Vote: I like it +106 Vote: I do not like it

»
6 years ago, # |
  Vote: I like it +55 Vote: I do not like it

But there will also be a substantial difference:

Different problems

Best announcement <3

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +13 Vote: I do not like it

    I'm not sure I understand this statement.

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it +19 Vote: I do not like it

      He said "Four important components of Hello 2018 will be the same as in Good Bye 2017: ..." before this.

      • »
        »
        »
        »
        6 years ago, # ^ |
        Rev. 2   Vote: I like it -8 Vote: I do not like it

        In my case, I was seeing "Other problems" instead of "Different problems", and I thought he meant 8 problems + other problems. But then it's no longer 8 problems :p But then they fixed it. Not sure why I saw "other problems"

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      But there will also be a substantial difference:

      Different problems

      Different writers!

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it
    Also usefull
»
6 years ago, # |
  Vote: I like it +21 Vote: I do not like it

Is this the first Hello contest ever made?

  • »
    »
    6 years ago, # ^ |
      Vote: I like it -14 Vote: I do not like it

    yes

  • »
    »
    6 years ago, # ^ |
    Rev. 3   Vote: I like it 0 Vote: I do not like it

    No, in 2015 there was such contest. It was put into gym and was unrated, but there was an announcement and countdown to it on homepage etc. http://codeforces.com/gym/100570

    EDIT: Oh, actually it was already mentioned below, I have not seen it before posting it.

»
6 years ago, # |
Rev. 3   Vote: I like it 0 Vote: I do not like it

Best announcement ever!!

Don't miss the chance to hack legendary grandmasters (reals and fakes) :D

»
6 years ago, # |
Rev. 2   Vote: I like it -99 Vote: I do not like it

.

»
6 years ago, # |
  Vote: I like it +21 Vote: I do not like it

Nice, one of my biggest competitors setting the problems this time, gonna be fun mate!

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +45 Vote: I do not like it

    It is less obvious if you change your icon too.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it -28 Vote: I do not like it

    ЗБ ФЕЙК

»
6 years ago, # |
Rev. 2   Vote: I like it -51 Vote: I do not like it

Highest ranked person on CF will not be able to participate

»
6 years ago, # |
  Vote: I like it -40 Vote: I do not like it

So, round by tourist for both divisions and without any purple guys as problemsetters... Seems to be my very chance to stop performing THAT shitty on contests.

»
6 years ago, # |
Rev. 2   Vote: I like it -208 Vote: I do not like it

Неплохое начало нового года!)

»
6 years ago, # |
  Vote: I like it +64 Vote: I do not like it

Let's not forget the idea of the first Hello contest was from the Sith

»
6 years ago, # |
  Vote: I like it -51 Vote: I do not like it

3.14-rated

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Tourist is going to be first contributor by the end of the contest!

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Hello 2018.

»
6 years ago, # |
  Vote: I like it +18 Vote: I do not like it

This time I don't even have to bet for 10K+ registrants, so I bet for tourist becoming Top contributor! :v

»
6 years ago, # |
  Vote: I like it -15 Vote: I do not like it

*short sad story ...

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    He still has a shot at solving C

»
6 years ago, # |
  Vote: I like it -35 Vote: I do not like it

Tourist is so overrated. He says anything and people will upvote him

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +37 Vote: I do not like it

    Metsuka is so underrated. He says anything and people will downvote him :(

»
6 years ago, # |
  Vote: I like it +7 Vote: I do not like it

Short statements please!!!

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

I hope know who of the setters did every problem, at least at the end of the competition, but I really want to know during the real competition. Is like knowing who you are facing when you solve the problem.

»
6 years ago, # |
  Vote: I like it -13 Vote: I do not like it

I can't wait to see these problems.

»
6 years ago, # |
  Vote: I like it +7 Vote: I do not like it

Logic Codeforces: participated in previous contest on 5/1/2018 and then the 8/1 is Hello 2018 ?? :D ??

  • »
    »
    6 years ago, # ^ |
      Vote: I like it -31 Vote: I do not like it

    We are pupil so we don't have right to express our opinion, or else we will be downvoted!

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it +3 Vote: I do not like it

      nahh nevermind, just speak up what you think tho, as long as they are not offensive

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it +9 Vote: I do not like it

      you get downvoted because you are rude and cancerous, I doubt most people have so much free time to click into your profile to know that you are pupil before downvoting

  • »
    »
    6 years ago, # ^ |
      Vote: I like it -8 Vote: I do not like it

    maybe the logic is 2018 is 8th year in this decade, so hello 2018 on 8th day of this year?

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    The other contest wasn't for both divisions

»
6 years ago, # |
  Vote: I like it -18 Vote: I do not like it

well it seems , the contest has legitimate reasons to cross 10k registrants.#Tourist.

»
6 years ago, # |
Rev. 7   Vote: I like it +27 Vote: I do not like it
»
6 years ago, # |
  Vote: I like it -22 Vote: I do not like it

Finally a round that tourist can't take the first place :D

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Can any body tell me if i should sleep to prepair for the next day's exam or ... well forget it!

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Now I wish I hadn't registered for a word games contest in my college. This will be sadly missed :(

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +27 Vote: I do not like it

    This will be sadly missed

    You mean the word games contest right?

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

With 1100+ uvotes on this announcement , tourist gonna top 2nd leaderboard too.:)

»
6 years ago, # |
  Vote: I like it +90 Vote: I do not like it

chinese boy again changed his handle jqdai0815

»
6 years ago, # |
  Vote: I like it +9 Vote: I do not like it

up to 10K

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

can you please tell me , what does it mean by "different problems" ?? i think every problem is different , from different tags like number theory , graph , dp , dfs/bfs , dsu , data structures ,ad hoc etc .

but i can't understand why "Different problems" is specialized in the blog , can anyone explain ???

»
6 years ago, # |
  Vote: I like it +10 Vote: I do not like it

Yea, eighth day of 2018 is great time to finish new year's eve parties and write some contest :3 But please, could somebody remind me, why is tourist organizing another contest and I still haven't do anything to have my own one?

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +15 Vote: I do not like it

    Oh, yea, I remember now, I'm so lazy, that's te reason... So hoping to see great tasks from you :D

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it +56 Vote: I do not like it

      Let's see if you can get upvotes by changing your color to nutella.

      • »
        »
        »
        »
        6 years ago, # ^ |
        Rev. 2   Vote: I like it +36 Vote: I do not like it

        Yea, I've just noticed it... Really, all the time I'm getting upvotes only because of nutella? ;_; I now feel upset, so much racism on codeforces :/ And on the other hand, seriously, no one recognizes me? So much effort, so much tiring and no one recognizes Radewoosh...?

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
            Vote: I like it +3 Vote: I do not like it

          Life of !reds is like this

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
          Rev. 2   Vote: I like it +23 Vote: I do not like it

          I recognize you Mateusz!!
          But not just because of your efforts and nutella, we were sitting next to each other at IOI! :))

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
            Vote: I like it 0 Vote: I do not like it

          Dude i do. You were like a star when became nutella. With to 1 places in a row. That was really cool! What was the judge you mainly worked on?

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
            Vote: I like it +92 Vote: I do not like it

          Make Radewoosh Great Again!

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
          Rev. 2   Vote: I like it +3 Vote: I do not like it

          Would you yield me an autograph if I say I do? :D
          (you won my contest if anything xD)

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
            Vote: I like it +89 Vote: I do not like it

          pfff people recognize swistakk, not you

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
            Vote: I like it +10 Vote: I do not like it

          I also recognize you Mateusz!!! (^o^)/

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it +10 Vote: I do not like it

        Holy crap it worked

  • »
    »
    6 years ago, # ^ |
      Vote: I like it -17 Vote: I do not like it

    Because you are still expert :V

  • »
    »
    5 years ago, # ^ |
      Vote: I like it +1 Vote: I do not like it

    So we finally see a contest from you Radewoosh, Hello 2019.

    Seems you were determined to take Hello contest only, like him.

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

username should have a valid length. This is totally embarrassing

»
6 years ago, # |
  Vote: I like it +88 Vote: I do not like it

is it rated?? please don't downvote today is my birthday.

  • »
    »
    6 years ago, # ^ |
    Rev. 2   Vote: I like it +19 Vote: I do not like it

    Let's see if this innovative strategy works

    P.S Please don't downvote today is my birthday

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it +17 Vote: I do not like it

      thanks for the popcorn mate meet you @ the party

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +56 Vote: I do not like it

    Can't wait for tommorow so I can downvote you

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +1 Vote: I do not like it

    Happy birthday ,aha

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Good Time! I don't have to skip class that day. Excited.

»
6 years ago, # |
  Vote: I like it +1 Vote: I do not like it

Before the contest ... tourist will be the first on the Top contributors list :)

»
6 years ago, # |
  Vote: I like it +38 Vote: I do not like it

Dang!

»
6 years ago, # |
  Vote: I like it +18 Vote: I do not like it

The comment is hidden because of too negative feedback, click here to view it

»
6 years ago, # |
  Vote: I like it -7 Vote: I do not like it

I hope that jqdai0815 will be the winner of the contest.

»
6 years ago, # |
  Vote: I like it -40 Vote: I do not like it

I am so shocked that no one has asked it, Is it rated though?

»
6 years ago, # |
  Vote: I like it +102 Vote: I do not like it

Mike did it :D

The Art of Errors Handling...

  • »
    »
    6 years ago, # ^ |
    Rev. 3   Vote: I like it -9 Vote: I do not like it

    And the first character isn't black!

    UPD: eh, sorry for the comment, it's him trying Grandmaster.

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it -83 Vote: I do not like it

      He plays with the handle and colors like a kid !

      it was bad behavior to change the handle in such way just to ruin the CF page design !

      such a RED Coder must be more wise and contribute to make this place better.

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it -27 Vote: I do not like it

        Very true! Very wise!

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it +78 Vote: I do not like it

        He actually contributed in making the place better by making Mike add the handling for long handles :)

»
6 years ago, # |
Rev. 2   Vote: I like it +1 Vote: I do not like it

That moment when I see Div-1 Coder's code failed on system test and my code get AC on same problem :D

»
6 years ago, # |
Rev. 2   Vote: I like it -15 Vote: I do not like it

Look at the Top Contributors list. Only Two more then Top Rating and Top Contributor tourist Love You :). You Are my first crush <3

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Looking at the large number of upvotes for this blog post, I can't wait to see number of registrants exceed 10000

»
6 years ago, # |
  Vote: I like it +97 Vote: I do not like it

Can you consider:

  1. Making drain lower?

  2. Turning "handle magic" off for the contest?

»
6 years ago, # |
  Vote: I like it +109 Vote: I do not like it

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Ugh. Sniping the typography nerds with that kerning.

»
6 years ago, # |
Rev. 2   Vote: I like it +6 Vote: I do not like it

World War 4 in next few minutes

»
6 years ago, # |
  Vote: I like it +5 Vote: I do not like it

tourist finelly get the first place of the Top contributors :D

well done

»
6 years ago, # |
  Vote: I like it +7 Vote: I do not like it

Lovely scoring distribution

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +2 Vote: I do not like it

    but I think problems will not be that easy

»
6 years ago, # |
  Vote: I like it +3 Vote: I do not like it

Hope, codeforces server work fine during the contest.

»
6 years ago, # |
  Vote: I like it +3 Vote: I do not like it

10 min delay

»
6 years ago, # |
  Vote: I like it +2 Vote: I do not like it

We have less than one minute so good luck to everyone!

»
6 years ago, # |
  Vote: I like it +8 Vote: I do not like it

Yeah Sure , Let's wait for 10k participants!!

»
6 years ago, # |
  Vote: I like it +16 Vote: I do not like it

It seems that we have more 10 mins to prepare the contest :)

»
6 years ago, # |
  Vote: I like it +6 Vote: I do not like it

Anyone facing this? HAHA

»
6 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

9K participants, yeeeeee

»
6 years ago, # |
Rev. 2   Vote: I like it -10 Vote: I do not like it

They are waiting for the total number of registrations to get 10000. Very greedy

»
6 years ago, # |
  Vote: I like it +156 Vote: I do not like it

Tourist can never create a complete problemset on his own, because he can't tell the difference between div2A-D

»
6 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

Wow. More than 9K registrants.

»
6 years ago, # |
  Vote: I like it +6 Vote: I do not like it

Extra 10 minutes for 10k registrants :)

»
6 years ago, # |
Rev. 2   Vote: I like it -8 Vote: I do not like it

codeforces hacking system is such a disaster now!

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Dear Admin , Please make sure that system testing is fast today unlike GoodBye Contest. :)

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

for A, is it possible to hack solutions of this form: cout << m % (1 << n); ??

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Is D ternary search on k?

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +21 Vote: I do not like it

    binary search on k

    • »
      »
      »
      6 years ago, # ^ |
      Rev. 2   Vote: I like it -6 Vote: I do not like it

      When k is small, we have many options to choose from. So just greedily choose the least time consuming problems from sorted vector(acc. to 'a'). This gives a situation where every problem we pick contributes to score. But as k is small, this score is low.

      When k is large, we don't have many options to choose from. So, we have many questions we can attempt, but not all of them might contribute to score, either due to not enough options with a value greater than k, or due to time.

      So, on both sides of optimal k, we get lower scores.

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        Nope. Doesnt make sense at all. Its clearly binary search.

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      I somehow got WA with that.

»
6 years ago, # |
Rev. 4   Vote: I like it +15 Vote: I do not like it

When you try to be newbie and fool the predictor:

»
6 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

Was the hack 30 100000000 invalid for problem A?

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I don't know how A was passing this test case.. I too tried to hack with similar test but failed which resulted in demotivation and regret of why the fuck I tried to hack and now I am going to be ripped off dark blue.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Maybe you are missing the endline between 30 and 100000000

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      I tried again with 30 (and in the next line)100000000 but it showed "ignored".

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

I couldn't get my code to compile, since apparently __int128's don't exist on CF?

http://codeforces.com/contest/913/submission/34030034

»
6 years ago, # |
  Vote: I like it +6 Vote: I do not like it

Please can anyone tell approach for 'C'?

  • »
    »
    6 years ago, # ^ |
      Vote: I like it -6 Vote: I do not like it

    If cost[i] < cost[i-1], we can just take 2^i objects instead of 2^(i-1). Just find the answer from binary representation of L.

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Problem D seemed really fascinating but couldn't really think how to approach it !! Anyone who solved, can explain the idea behind it?

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    binary search on k

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      That's Nlog^2 right? I thought that it is possible to have a gap in ks, but it wasn't true so I missed this solution. But I wanted to make sure that I haven't missed a more efficient solution (mine is NlogN, but the difference shouldn't matter)

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        No, its NlogN. You can sort array t before binary search, and then you simply need one traversal inside binary search. But, you need to keep arrays a and t together, i mean, sorting array t will mix indexes, but you can keep vector of pairs or something to keep a_i and t_i together always.

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
            Vote: I like it +4 Vote: I do not like it

          Ohh shit, you're right. And it was much easier to code.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +5 Vote: I do not like it

    I think binary search, actually im pretty sure. First, sort t_i but keep a_i with them ( you can make vector of pairs). You binary search for res, and you go through array a and ask if a_i is bigger than res, if yes add t_i to sum. If you can add exactly res elements so that sum is less or equal to T, then just lo = mid + 1, othervise hi = mid- 1.

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it +1 Vote: I do not like it

      Shouldn't you check if a_i is >= res and not bigger than res. I used the first one and got WA.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    We want to maintain multiset of times for value K when we do a cycle for k from n to 0. Just add all problems with a=k and check if first k elements sum of the set is <=T.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I've done ternary search by the a[i] ( the min value of a[i] that will appear in the answer ). I was late to submit. So, maybe someone did it with the same approach?

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I did not use binary search or ternary search. I tried all possible answers in decreasing order maintaining the best set of problems so far, in such a way that each problem is added and removed from the set at most once. So it works in : solution.

»
6 years ago, # |
  Vote: I like it +3 Vote: I do not like it

Problem D is binary search, I didnt have time to submit solution, I was late for few seconds literally..

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Mate! Just the same. Understand your feelings :(

»
6 years ago, # |
  Vote: I like it +185 Vote: I do not like it

»
6 years ago, # |
  Vote: I like it +25 Vote: I do not like it

I hope there is an elegant solution for problem E. It would be an implementation hell otherwise.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +29 Vote: I do not like it

    you need to think in terms of graphs and do some sort of shortest path algorithm which obeys given grammar

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      What about the lexicographical thing?

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        Will the simplest brute force work? Just iterate through all the possibilities of the combination of logic...It is not that slow I think.

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
            Vote: I like it 0 Vote: I do not like it

          I thought it work at first, but turned out that some of the answer is really long (more than 12 character), so brute force didn't work.

          • »
            »
            »
            »
            »
            »
            6 years ago, # ^ |
              Vote: I like it 0 Vote: I do not like it

            So I mean the brute force with minimal branch-cutting. The point is that the brute force must be implemented correctly.

            And yes I think it is hard to debug because some of the expressions are really weird.

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
            Vote: I like it +1 Vote: I do not like it

          I did that and since possiblities are just 256.I hardcoded them

          • »
            »
            »
            »
            »
            »
            6 years ago, # ^ |
              Vote: I like it 0 Vote: I do not like it

            I saw your solution. How did you come up with the wierd formulas?

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        here is distance is the string and we can write comparator for that as required.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    The implementation is not that bad. Just follow the grammar. The problem, though, it's one of the biggest piles of shit I have ever seen

  • »
    »
    6 years ago, # ^ |
    Rev. 3   Vote: I like it +23 Vote: I do not like it
»
6 years ago, # |
Rev. 2   Vote: I like it +2 Vote: I do not like it

 How can someone take n-1 integers as input using this loop and get pretest passed in problem B ?? Or am I missing something ??!!

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    It is given that vertex 1 is the root!

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it +6 Vote: I do not like it

      Looks like you didn't get my point. After n, there are n-1 inputs in the problem. But, this man loops from o to n-1, that means he takes n integers. How did he even get output ??!!

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it +1 Vote: I do not like it

        There is input stream closing. When stdin closes scanf doesn't wait for input, it just returns 0. Question is what is u. I don't know, but i presume, that u is dublicate from previous iteration.

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Shitty Bug ! Spent 1 and half hour on a stupid bug!

»
6 years ago, # |
Rev. 3   Vote: I like it +10 Vote: I do not like it

I'm sure that this:

cin >> n >> m;
cout << m % (pow(2, n)) << endl;

Passes system tests, in div2 A.

»
6 years ago, # |
  Vote: I like it +51 Vote: I do not like it

You know that sweet feeling when you've been debugging a source that is correct because it fails the example because the modulo is not the standard 1e9 + 7? Well now I do and it hurts like shit especially when I solved the problem 20 minutes before the end of the competition and I just found the bug...Anyway, apart from my mistakes, E was a total shit and I regret that I upvoted the contest

»
6 years ago, # |
  Vote: I like it +4 Vote: I do not like it

matthew99 finally makes a comeback. Congratulations !

»
6 years ago, # |
  Vote: I like it +96 Vote: I do not like it

CF's hack system is a total disaster. It should be disabled IMMEDIATELY until admin replaces it's flash-based hack interface

»
6 years ago, # |
  Vote: I like it +10 Vote: I do not like it

Similar problem E link only output length.

»
6 years ago, # |
  Vote: I like it +30 Vote: I do not like it

When you realize after contest that in D it's a[i]<=m to count instead of a[i]>=m. -_- fml fmr(rating)

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +1 Vote: I do not like it

    i also thought same for 1 hour lol

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +1 Vote: I do not like it

    Wtf, me to))

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I think i've messed it up because of the 1st test

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

what was the hacks for A and B ?

»
6 years ago, # |
  Vote: I like it +25 Vote: I do not like it

It's true that Problem D is the final "Too Easy Problems" ? :) But anyway, nice contest and nice problems.

»
6 years ago, # |
Rev. 2   Vote: I like it +6 Vote: I do not like it

On problem A --> How on earth this --> 34020785 submission passed the inputs test 1:

1000000

1000000

test 2:

12123

12123

test 3:

123213

123213

Can anybody explain??

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Even I got an unsuccessful hack attempt on a similar solution. What I observed was that the value of s becomes some large negative (something like -9.XXXX * 10^9) and the modulo returns the correct, positive remainder.

    Although unsuccessful hack, I am impressed by the cleverness of those guys. I mean, cmon! The hackbait was TOO DAMN TEMPTING XD

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +2 Vote: I do not like it

    In C++ standard reference casting from double/float to int has undefined behavior if the result lies outside the range of representable values. In VC and G++ compilers it returns MAX_INT for overflowing and the modular works well.

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

I failed to hack lots of problem A solutions because of casting from double(in pow method) to int returned MAX_INT and the modular operator returns correct answer. (However in C++ reference, it talks about undefined behavior for overflowing). Anyway I learnt something new :-)

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Ah...give me 10 more mins I can submit E...so sad.

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

In Problem A, will the code using power function for all n can get Accepted and if not can anyone help me with the hacks that can be used or if the answer is yes then why is it so because there will be overflow. (sorry about bad English.) Thanks.

// C++ ll is long long

ll solve(ll n,ll m){ ll x = pow(2,n); return m%x; }

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Seems like casting double to int with overflowing surprisingly gives -2^31 as an answer. int(pow(2, 1000)) = -2147483648. And yes, because m <= 10^8, m % (-2147483648) = m (which won't not be true for m > 2^30 or something).

    • »
      »
      »
      6 years ago, # ^ |
      Rev. 2   Vote: I like it +3 Vote: I do not like it

      m%INT_MIN=m is true for all 32 bit signed integers except m=INT_MIN. The reason is the way % operator is defined. a%b+(a/b)*b=a always holds true, and for b=INT_MIN, a≠INT_MIN, a/b when casted to int (rounded towards 0) returns 0. Thus, a%b=a follows.

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Problem E of this contest is almost the same as today's Problem E.It makes me feel not so good that I struggled on E for about 1 hour only to give up and was told there was a similar problem on Codeforces just after the contest. Link

»
6 years ago, # |
  Vote: I like it +53 Vote: I do not like it

Does the following work on H? I didn't have time to write it due to having too many bugs on G.

Say the x1, x2, ..., xn split [0, 1] into n + 1 intervals: I1, I2, ..., In + 1. Now we do dp, with the observation that the answer on each interval is going to be a polynomial. The dp formula directly shows this. The rest is then just implementing some integrals to compute the density on a real number x after k steps.

»
6 years ago, # |
  Vote: I like it +8 Vote: I do not like it

E is totally same with http://codeforces.com/gym/100867 problem E I don't think it's good.

»
6 years ago, # |
  Vote: I like it +5 Vote: I do not like it

can anyone please explain the approach for C?

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Anyone have a list of their solutions for all 256 functions in problem E? I can't figure out why I got WA, here's my list: https://pastebin.com/r6Curstb

»
6 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

Why does my ternary search logic fail?

When k is small, we have many options to choose from. So just greedily choose the least time consuming problems from sorted vector(acc. to 'a'). This gives a situation where every problem we pick contributes to score. But as k is small, this score is low.

When k is large, we don't have many options to choose from. So, we have many questions we can attempt, but not all of them might contribute to score, either due to not enough options with a value greater than k, or due to time.

So, on both sides of optimal k, we get lower scores.

Edit : The test case I failed was due to > instead >=

But, as others did it with binary search, I wonder where my ternary search logic has flaws.

»
6 years ago, # |
  Vote: I like it +6 Vote: I do not like it

I created (and solved?) a harder version of problem D as I misread the problem statement as:
A task will be taken into account to the final score if a[i] <= total_solved_task. (Indeed, I pass all the samples with this interpretation)

And I wasted more than 100 minutes on it while 1k more contestants solved it :)

It's time to become a Candidate Master :)

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

In problem G, I add some last digits such that the result number N satisfies N % 2|N| = 0 and N doesn't end with 0 or 5. The rest is to find k such that N ≡ 2k modulo 5|N|. It seems to be done by induction.

  • »
    »
    6 years ago, # ^ |
    Rev. 3   Vote: I like it 0 Vote: I do not like it

    I thought the same thing but forgot that N % 2^|N| needs to be 0. If you can prove the minimum |N| needed, there's a way to find k in O(5^(|N|/2) * log(|N|)). Also, it looks like 2^i passes through all numbers not divisible by 5 on modulo 5^|N|. The way to find k is finding the numbers 5^(i * floor(sqrt(n))) and starting from the number you want going back (multiplying by floor(5^|N| / 2) + 1 that's the modular inverse of 2) until finding a number that's from 5^(i * floor(sqrt(n))).

    Edit: but probably there's a smarter way to solve it, something like getting the answer for 5^x using the answer from 5^(x — 1), since 2^i is a cycle through 5^(x — 1) and probably through 5^x so the answer for 5^x is i * size of cycle + answer for 5^(x — 1).

»
6 years ago, # |
Rev. 2   Vote: I like it +3 Vote: I do not like it

Can someone please explain to me why this submission on problem D passes the pretests?

On the first example test (which is usually the same as the first pretest), it outputs:

2 2 3 4

... implying that you get a score of 2 if you solve problems 3 and 4. But you don't, you get a score of 1 (since problem 3 requires 4 solved problems). Am I missing something or is the judge for this problem broken?

EDIT: nevermind, it seems like I interpreted the statement wrong. I thought a[i] has to be smaller than the total number of problems, but in reality a[i] has to be greater than the total number of problems... and reading through the comments here, it seems like I'm not the only one :P

»
6 years ago, # |
  Vote: I like it -12 Vote: I do not like it

D is straightforward binary search . Lost a good amount of time while debugging C ! :( . bad contest.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Just because you can't handle overflow doesn't mean contest is bad >:(

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Hello 2018 but with the old name... So sad

»
6 years ago, # |
  Vote: I like it +11 Vote: I do not like it

I find this contest so much better than the good bye 2017. I'm very grateful to the authors.

»
6 years ago, # |
  Vote: I like it +48 Vote: I do not like it
»
6 years ago, # |
  Vote: I like it +9 Vote: I do not like it

Correct way to solve C?

Also, hello 2018 and rating drop my old friend...

  • »
    »
    6 years ago, # ^ |
    Rev. 2   Vote: I like it +10 Vote: I do not like it

    Let's update ci: ci + 1 = min(ci * 2, ci + 1). After this we may see that taking away 2N - 1 until L ≥ 2N - 1 is optimal since it's the smallest price we can get 2N - 1 litres for. Then there're two possibilities if there are remaining coins: you either take one more 2N - 1 or go and do the same thing for 2N - 2 till L ≥ 2N - 2 and so on.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Look at my code

»
6 years ago, # |
  Vote: I like it +31 Vote: I do not like it

check this out that's why you are not red yet :v http://codeforces.com/contest/913/submission/34025378

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

What is TC 8 on problem C all about?

»
6 years ago, # |
  Vote: I like it -15 Vote: I do not like it

include<bits/stdc++.h>

using namespace std;

int main(void) { long long m,n; cin >> m >> n; long long result; result=pow(2,m); cout << n%result << endl;

}

How this code got AC for problem A? I used repl.it compiler and it gave RE.

»
6 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

failed :/

and failed :'/

and failed ×_×

...HELLO, 2018!!!

»
6 years ago, # |
  Vote: I like it +28 Vote: I do not like it

Is it just me or you also had these failed problem phases? in all last couple of contests, I had systest failed problems for stupid reasons, in all of them. I'm really stuck in this sh*tty rating because of the HUGE effect that a 1000 or a 500 point problem can have.

You know what's my problem with codeforces? I can solve all of the "easy" problems in a relatively small time, for example, I solved the first four in 49 minutes, not bad, but I'm not using the extra one hour and half for anything (Sometimes hacking, but you always have this belief that you can solve another one). And I'm not alone, usually, the easy problems are solved by more than 1000 people at the end of the contest. the next problem is solved by like 100 people, of course, I can't easily solve it, there are 100+ GMs competing too and they couldn't.

So what's the way for me to get a good rating? submit questions fast, if I don't I will get more penalty and since 1000 people already solved all of the easy problems, I will have a rank like 700+ which is not good. So I have to be fast. Alright, but getting pretest passed is also not a 100% guarantee to get a score of a problem. and when you fail to solve a problem what happens? you go miserably down on ranking.

Even if I have many good contests one after another and I bring up my rating, again there will be another contest, super hard to solve more than 3, and you just need a silly mistake on A to fail and with only B & C for example go down terribly.

I don't care about my ranking, I just don't like the feeling of being stuck in Div.2 for this long. Every time I have to solve things that are not really adding to my knowledge like Div2.A and Div2.B and a lot of times Div2.C.

Tl;dr, I just want sort of contests on codeforces, that have a mellow decreasing number of people who could solve the problems. something like 3000, 1500, 700, 300, 50.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +1 Vote: I do not like it

    I believe that virtual participating in previous contests, with practicing on being careful and quiet during reading and solving problems, will decrease the possibility of failing in post-test in real contests.

»
6 years ago, # |
Rev. 2   Vote: I like it +1 Vote: I do not like it

what's the easiest and fastest solution for C?

please explain completely(not just like most of editorials :))

UPD1:I read tutorial and it was easy and fast and complete enough :D

»
6 years ago, # |
  Vote: I like it +1 Vote: I do not like it

Is rating predictor alright? Doesn't seem so by looking at the rating predictions.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    Things got pretty complicated in the predictor due to handle changes (newly-used handles will be identified as new users by the predictor, therefore, the prediction is way too different).

»
6 years ago, # |
Rev. 2   Vote: I like it +3 Vote: I do not like it

one of my friend solve A with cryptography

34024600

»
6 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

hi there

i've a question about my problem B

why this 34032197 sulotion should get acc while the MAXN = 1000 & somewhere i've used adj[1000] ????

»
6 years ago, # |
  Vote: I like it +11 Vote: I do not like it

My submission for problem D, fails on the 23rd test case, but the checker log is weird, I don't have access to the full test case, but my answer seems correct based on the little summary that I can see.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +8 Vote: I do not like it

    I think this error means that "You said max score possible was 89771 but the score calculated from the indices you printed is 89770"?

    Not 100% sure but it seems this way.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    it says that the 89772 items you chose gave you actual score of 89770 not 89771 as written in the first line of your output, so I think the mistake is not obvious by just looking to the summary

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it +1 Vote: I do not like it

      Yes, I got accepted now. Also thanks to tourist for taking the time to read and debug my code.

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        what?

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it 0 Vote: I do not like it

        Could you explain?

        Why your code gets wa?

        • »
          »
          »
          »
          »
          6 years ago, # ^ |
          Rev. 2   Vote: I like it +3 Vote: I do not like it

          I explained you already in private message, anyway again:

          If you answer more questions than the actual number, it might make other questions useless. (does this sentence make sense?!)

          For example imagine we have infinite time to answer the questions and our "a" sequence is {2, 2, 2}. The answer is of course 2, but if we solve all three problems, we get 0 points.

          • »
            »
            »
            »
            »
            »
            6 years ago, # ^ |
              Vote: I like it 0 Vote: I do not like it

            Thank you :D

            I forgot some statement

            Unfortunately, your teacher considers some of the problems too easy for you. Thus, he assigned an integer ai to every problem i meaning that the problem i can bring you a point to the final score only in case you have solved no more than ai problems overall (including problem i).

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Can anyone help me, Im getting TLE on D even though my solution is NlogN. http://codeforces.com/contest/913/submission/34032577

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    maybe there is problem with binary search? infinite loop?

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it +1 Vote: I do not like it

      i sort a[ i ] first, and when i do binary search, L = 1, R = max( a[i] ), this is my solution 34024763

  • »
    »
    6 years ago, # ^ |
    Rev. 2   Vote: I like it +1 Vote: I do not like it

    Well... first, I see you do int a[100010], t[100010] but n is up to 2 * 10 ^ 5. Secondly, at some point in your code you have res.clear();, but a few lines later you access res[i] (vector res is now empty).

    Quick edit: it seems like by doing the above modifications (setting the array size to 200010 and commenting the res.clear(); line) gets you accepted.

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      Thanks so much! But its weird how I got TLE for mistakes that dont affect time but only corectness and memory (am I right? ).

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it +4 Vote: I do not like it

        In C (and C++), accessing out-of-bounds memory causes "undefined behavior", which is a term for "anything can happen and you (generally) don't know what to expect". Results of undefined behavior are implementation-specific (depends on the compiler). For example, it is not impossible that your out-of-bounds array access might have overwritten some data important in memory which caused you to TLE (maybe the variable which dictates the loop limit or the loop index, the return address of some function on the stack etc).

»
6 years ago, # |
  Vote: I like it +1 Vote: I do not like it

There is a substantial difference: https://www.diffchecker.com/zgfaXp6C :)

»
6 years ago, # |
  Vote: I like it +5 Vote: I do not like it

Hello 2018 by being Purple for the first time :)

Thanks tourist for a great contest! :D

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +10 Vote: I do not like it

    So how was your experience from Legendary GrandMaster to Candidate Master? :P

»
6 years ago, # |
Rev. 5   Vote: I like it 0 Vote: I do not like it

The difference between WA on test 8(pretests passed) and AC: [](https://imgur.com/gallery/LLTRc)

»
6 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

shbhm_5301 Please explain your solution of C (34024529)

»
6 years ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

Thank You [user:tourist]for nice and pretty problem. Now I am a Blue Coder :'(. I am Very Happy For That. :). After 2 years.

  • »
    »
    6 years ago, # ^ |
      Vote: I like it +4 Vote: I do not like it

    But your account is registered just 10 days ago, which account you used before?

»
6 years ago, # |
  Vote: I like it +3 Vote: I do not like it

Thank you very much for the great contest tourist. I've finally become blue.

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

TC 17 of problem B:

13 1 2 2 2 1 6 6 6 1 10 10 10

Node 1 doesn't have 3 leaf children, so it isn't a spruce tree. But the correct answer is YES. Can someone explain it to me?

  • »
    »
    6 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I just got the idea and understood why the correct answer is YES. My big mistake :(.

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it +2 Vote: I do not like it

      The answer for that test case is NO.

      • »
        »
        »
        »
        6 years ago, # ^ |
          Vote: I like it +3 Vote: I do not like it

        I figured out that I understood the problem correctly but there is a bug in my program. How silly of me! :(

»
6 years ago, # |
Rev. 3   Vote: I like it +3 Vote: I do not like it

http://codeforces.com/contest/913/submission/34021734 Accepted

http://codeforces.com/contest/913/submission/34049526 Wrong answer on test 4

http://codeforces.com/contest/913/submission/34049558 Accepted

What is diffrent ? I edit just one line about ll b in dfs function..

  • »
    »
    6 years ago, # ^ |
    Rev. 4   Vote: I like it +13 Vote: I do not like it

    This is interesting. It is heavily dependent on the compiler, but it seems like these two lines can get interpreted differently:

    ll b = (get + v[cur] > L) ? dfs(cur - 1, get, cost) : 1e19;
    ll b = (get + v[cur] > L) ? dfs(cur - 1, get, cost) : (ll)1e19;
    

    Again, this is compiler-dependent, but I tested this on VC++ 2017 and it seems like in the first case the compiled code interprets 1e19 as a double (which it is) and converts it to an unsigned long long at runtime via a low-level function __dtoul3. As you might know, conversion from double to integral types can introduce precision errors. In the second example, the compiler treats (ll)1e19 as an integral constant (i.e. it behaves exactly as it would if you were to write 1 followed by 19 zeores) and therefore no conversion error occurs.

    I know this is an unpopular opinion, but this is why I always advise against using scientific notation for integer constants. Even though most modern compilers behave in the same way and work correctly, the C++ standard leaves many details about conversions to the specific implementation of the compiler. Although this doesn't usually introduce problems, sometimes it just might (and this is the perfect example). Just write 100000 instead of 1e5. You'll have to type out a few extra characters, but you'll avoid unpleasant surprises :)

    P.S.: my compiler gives me this warning in the first version of the code: warning C4244: 'initializing': conversion from 'double' to 'unsigned __int64', possible loss of data Even though it is in no way a must, personally I always fix warnings before submitting a code. It's good practice. (the company I work at compiles with the "treat warnings as errors" option).

    • »
      »
      »
      6 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      Thank you for your detailed explanation!! :>

    • »
      »
      »
      6 years ago, # ^ |
      Rev. 3   Vote: I like it 0 Vote: I do not like it

      interprets 1e19 as a double (which it is) and converts it to an unsigned long long at runtime

      Yes, it interprets 1e19 as double, but it will promote the dfs return value to double and later cast to long long when assigning to b (this is where the warning comes from). Integer values are always promoted to floats, not vice versa.

      Also I don't get why it would be dependent on the compiler, seems well defined to me?

»
6 years ago, # |
  Vote: I like it 0 Vote: I do not like it

Hooray

That means we will have "Hello"-contests anually, doesn't it?

»
6 years ago, # |
Rev. 3   Vote: I like it +14 Vote: I do not like it

Does anyone notice that this contest's rating changes are lost?

UPD: It has returned already :)