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

Автор GoatTamer, 2 года назад, По-английски

Hello Codeforces!

Computer Club, MNNIT Allahabad, India is glad to invite you to the annual programming competition of MNNIT, INSOMNIA, which is an ACM-ICPC style team programming contest of 2.5 hours duration held on Codeforces during its annual technical fest Avishkar. The team can consist up to 3 members.

Contest Details:

  1. Qualifiers:
    • Start Time: Wednesday, November 9, 21:00 IST
    • Duration: 2.5 hours
  2. Finals:
    • Start Time: Sunday, November 13, 12:00 IST
    • Duration: 2.5 hours

Top 25 global teams, and Top 25 teams from MNNIT (based on the result of Qualifiers) will qualify to the Finals. The prize distribution for global teams is mentioned below:

Teams consisting of MNNIT students only will be eligible for a seperate prize pool.

Register your team for the qualifiers here: https://forms.gle/BKsbKfoGzSxC394R8
Also self-register your team directly on codeforces: https://codeforces.net/contestInvitation/a08a3cd920019089aec1f1492b88bbb3f76a478d

Problem setters: GoatTamer, Electron, Invincible06, Prat21, Rook_Lift, karimulla1098, lokesh_2052.
Testers: Aur_Batao, satyam343.

We have an exciting problemset awaiting you. Good luck and have fun!

UPD: The Finals will be open for all to participate, but you will be eligible for prizes only if you have qualified through the previous round. (Qualified teams will be sent an email for confirmation and as a reminder to register). Finals link: https://codeforces.net/contestInvitation/fba84689837b1330fca8c746fe64af017d523fb6

UPD: Hope you guys enjoyed both the sets. Here are the official winners of the finals:

Global teams:
1. amigos (ritikmital, rishabnahar2025, gupta_nitin)
2. BforBruteForce (beedle, DrearyJoke, Yomapeed)
3. Angeethi_Lovers (AwakeAnay, TimeWarp101, ShivanshJ)

Shoutout to YouKn0wWho for solo-grabbing the $$$3^{rd}$$$ spot in the Finals.

MNNIT Teams:
1. White (aadiitya, lucifer223, Aditya.Rai)
2. MeowTourist (RedDaisy, Invinc3, _NICkk)
3. Crush_Ki_Smile ::uwu:: (Just_a_n00b, krishnaaa2303, Till_my_Death)

Editorial:

Qualifiers
Finals
  • Проголосовать: нравится
  • +67
  • Проголосовать: не нравится

»
2 года назад, # |
  Проголосовать: нравится -13 Проголосовать: не нравится

A blue announcing the contest, must be mid

»
2 года назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится

Goat's contest is what I read.Hoping to have a good experience. :)

»
2 года назад, # |
  Проголосовать: нравится +24 Проголосовать: не нравится

Bakri round :0

»
2 года назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится

NIT allahabad Contest orz

»
2 года назад, # |
  Проголосовать: нравится +11 Проголосовать: не нравится

Blue contest, must be easy

»
2 года назад, # |
  Проголосовать: нравится +14 Проголосовать: не нравится

Registrations have opened. Don't forget to register your team on the contest link well before the contest begins: https://codeforces.net/contestInvitation/a08a3cd920019089aec1f1492b88bbb3f76a478d

»
2 года назад, # |
Rev. 2   Проголосовать: нравится +6 Проголосовать: не нравится

First link (external one) doesn't work for me :(

UPD: Now it works.

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

How many problems will be there and, what is the expected difficulty of the round?

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

    Qualifiers will be a Div3-ish set, Finals will be a Div2-ish set.

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

      damn if this will be a div 3 round I'll be more than happy to participate unofficially in it XD!!

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

        I had meant it as in if an X rated person can full-solve a Div3 set in Y minutes, a team of 3 X rated people could full-solve this set in Y minutes. Also, Im sure it would be easier if the problems were ordered like a cf-style round.

        definitely not coping the fact that I underestimated difficulty of set

»
2 года назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

is there any penalty for a wrong submission

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

How to solve A?

  • »
    »
    2 года назад, # ^ |
    Rev. 2   Проголосовать: нравится +3 Проголосовать: не нравится

    Editorial will be available soon, here is the brief description:

    I am basically counting the number of pairs (i, j) such that the final condition is satisfied. For this I am traversing the tree in depth first order and maintaing an array of hashes from root to current node.

    Now, for each node we can simply do a binary search on this array of hashes to calculate the up_node (the node till which a matching occurs with the prefix of the given string).

    Now, we can use this up_node value to kind of calculate the count of 'j' for each 'i'.

    Now, there is possibility of overcounting, so I am using small to large merging to eliminate it.

»
2 года назад, # |
Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

Definitely harder than div3-ish. Overall the problems were quite good. Was MO's the intended solution for G?

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

    You could answer the queries offline which would allow you to get by with a Fenwick tree

    • »
      »
      »
      2 года назад, # ^ |
      Rev. 3   Проголосовать: нравится 0 Проголосовать: не нравится

      Deleted

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

        uh, just ascending order of queries should be fine, this would allow you to scan the array from left to right and maintain frequencies in a fenwick tree. Mo's was not required at all.

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

    You can use a standard trick if you are given offline queries of type l, r, x where you have to find number of elements greater than x in range l, r. You can form events which consists of either {a[i], i} or {x, query_id} and sort it on the basis of the first element. Now when you encounter the event {a[i], i} just update the position i in a fenwick tree with 1. So for each query you just need to count the number of 1's in the range (basically the sum).

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

    if you are interesting in seeing impl using merge sort tree, check my submission link

    I hope you can ignore 200 lines of irrelevant template.

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

Is there a solution for D that does not require 140 lines of code? :) I spent 1 hour debugging it :)

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

    You could observe that for any number $$$n$$$ ending with 9, the xor of (xor of all digits) from $$$[1,n]$$$ is either (1^2^3^4^..^9), or 0.

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

    I solved it using digit dp

    c++ code
  • »
    »
    2 года назад, # ^ |
    Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

    For any 10 numbers starting from *0 to *9 the xor of all digits is 1. Use this observation .

    Code

    Ranges smaller than 20 can be handled by brute force to avoid any corner case.

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

Editorial?

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

How can i get the solutions of contest problems??

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

    All submissions should be public, editorial will be uploaded after Finals is done.

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

Where can we see more details about final round?

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

    The final Round is scheduled on 13th Nov, 12 PM (IST); we will mail the test link and other details to qualified teams. Still, if you have any doubts, you can dm me

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

Insomnia = Dreamcatcher//>?

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

    I don't watch Japanese children's cartoon shows and comic books or Korean children's music bands

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

Due to unavoidable circumstances, the contest is delayed by 15 mins. Sorry for inconvenience.

»
2 года назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

Enjoyed the contest!

»
2 года назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

Please make submissions public

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

Problem B Treely in finals was proposed by an author in HackerEarth for hiring challenges creation, I only tested that problem. I think that is a violation of the rules for a contest.

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

    Seems like a notorious coincidence.

    I assure you all problems that appeared in the sets was originally created and prepared by the problemsetters.

    That aside, how can one even search for a problem that has not even appeared in a contest, and was in testing phase as I gather from your comment.

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

When will the editorial of the finals be released?

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

In Code for Probablity Tree, in small to large merging dfs, shouldn't the first element of pair be depth of upNode instead of upNode itself, taking in consideration the way its being iterated and being break out of loop.