74TrAkToR's blog

By 74TrAkToR, history, 3 years ago, translation, In English

Hello, Codeforces!

We are happy to invite you to our experimental round for three divisions, which will take place at Oct/22/2023 14:05 (Moscow time). Please note the non-standard start time for the round. Each division will have 5-7 tasks. The round will be held according to the Codeforces rules and will be rated for all three divisions. A few changes regarding the ratings of participants in this competition:

  • In Div.3 the rating of participants is less than 1600.
  • In the Div.2 ranking, participants range from 1600 to 2099.
  • In Div.1 the rating of participants is no less than 2100.
  • Please note that after Codeforces Round 904 (Div. 2) the rating will not be recalculated until the end of this competition.

Let us note that two team Olympiads will be held in parallel on this day and the rounds are based on their tasks:

  • XXI Moscow Team Olympiad, high school students competition based in Moscow that is an elimination contest for All-Russian Team Olympiad.
  • III Open Team Olympiad UMSh in programming.

We would like to thank everyone who helped me a lot with round preparation.

We wish you good luck and high rating!

UPD: One of the problems will be interactive, so please read guide for interactive problems before the contest.

UPD: Score distribution:

  • Div.3: $$$500-1000-1500-1750-2500-2750-(1750+2000)$$$
  • Div.2: $$$250-500-1000-(750+1250)-2250-2750$$$
  • Div.1: $$$(250+500)-750-1000-1250-2000-2750$$$

UPD: Editorial

UPD: We will retest the solutions to the problem div3F and div2C. This may make minor changes, the rating will be recalculated later.

UPD: Retesting took several minutes. Now all the results are correct :)

  • Vote: I like it
  • +506
  • Vote: I do not like it

| Write comment?
»
3 years ago, hide # |
 
Vote: I like it -23 Vote: I do not like it

As a tester I tested the round and it was a fun one!

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

"Please note that after Codeforces Round 904 (Div. 2) the rating will not be recalculated until the end of this competition.". Does that mean that our div in round 905 will be determined by rating before round 904?

»
3 years ago, hide # |
 
Vote: I like it -10 Vote: I do not like it

As a tester I recommend you to read all the problems

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

I'm proud to be a tester of the first div123 round on Codeforces ever, and I recommend you participate in it

»
3 years ago, hide # |
 
Vote: I like it -10 Vote: I do not like it

As a tester I can say only that the tasks are really interesting and well-balanced! Don't forget that it is the first div123 Codeforces round ever, so why not to participate in it? Good Luck!

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

Is Div 3 will based on ICPC like prevoius Div 3 round or rather it will follow Div 2 Pattern

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

I am a tester.

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

Finally standard rule of Div3 and 2100+ Div1! Exciting!

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

May be we could soon see (Div1,Div2,Div3,Div4) happening at once just like this.

»
3 years ago, hide # |
Rev. 2  
Vote: I like it -14 Vote: I do not like it

OMG first div123 ever!

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

First time div 1,2,3...... 1600~2099 div 2Hopefully it will be interesting..

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

Will there be score distributions(especially Div.3)?

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

It isn't a good idea for 2 contests on the same day. Because #905 is based on a competition, maybe we can move #904 to another day?

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

This round div3 equal to div4.

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

i can register on both div 2 and div 3. What if i spam wrong solution on div 3 then submit the right one on div 2?

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

I have a 50% chance to wake up early enough for this contest :)

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

Looking very interesting round, the first Div.1,2,3 contest on codeforces.

Good luck to everyone!

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

The average strength of the opponents will be very high in this Div1, and I'm very afraid. Should I participate in?

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

So for the first time div 3 won't follow icpc rules. Very interesting

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

Score distribution is so weird.

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

does each div have questions that are on other divs? like is div3G the same as div2D and div1A ? or each problemset is unique

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

So why is there a 3 problem difference between Div.1 and Div.2? Is it because purples are now in Div.2?

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

    This is not related to rating or anything, they need to set a big range difference if they have a large amount of tasks or else they will need to increase the number of tasks per division

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

One of the problems will be interactive

For Div1?2?3?Or for all Div 1,2,3?

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

this is a historic moment

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

First ever Div 2. that I've not been able to participate in because of my rating :/

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

I don’t understand if div3 will be rated for me if I raise the rating to div 2?

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

“Please note that after Codeforces Round 904 (Div. 2) the rating will not be recalculated until the end of this competition.”

Does that mean even if I become Master now I should still participate in Div.2?

»
2 years ago, hide # |
 
Vote: I like it +26 Vote: I do not like it
:3
»
2 years ago, hide # |
 
Vote: I like it +3 Vote: I do not like it

So excited for this contest. Best of luck everyone...

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

After this round ends and the round 904 rating is calculated, will the seed for calculating round 905s rating be based on the final rating after 904? Or will both of these be calculated in parallel and added to current rating?

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

I wish I can AK!!!

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

One of the best contests i have ever had :)

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

Was it just me or div2 A seemed harder than usual and div2 E was easier than div2 D?

»
2 years ago, hide # |
 
Vote: I like it -28 Vote: I do not like it

Seems like a good system going forward, let's keep using this for future rounds. It should also deal with rating volatility better IMO.

Maybe even div2+div3 rounds when we only have a div2.

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

Guys, please help. My solution on D3E fails on 4th test. Can anyone spot the mistake? 229288636

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

rip, didn't see you could reorder in D1. It's a very easy problem for its position

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

Can we not make round 2h for absolutely no reason? Ok thanks.

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

statment in Div2D is really confusing for me

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

Thanks for the great contest! gonna hit expert this round :)

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

couldn't anyone explain, why in the last example test, answer is 28? Div2, C

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

    Make sure you are not double counting the same segments. (I was getting 26 instead of 28 in the last test of pretests).

    Segments [1;2], [1;4] — [3;4], [1;5] — [4;5], [9;10], [8;10] — [8;9], [7;10] — [7;8], [3;10] — [3;4] are bad segments, plus amount of repeating numbers (segments of length one) in total equal 29, but actually I double counted segments 7,2 and 7,2,3, so the amount of good segments is 28.

    Basically if you have 2 repeating numbers somewhere in your array, a good segment can't end at the repeating number that comes before, and can't start at the repeating number that comes after

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

Why is my solution TLE on E?

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

Can you someone give some hints on how to solve div3 D?? dont know which data structure or approach to take..

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

    You always only need to know if the shortest end time <= the longest start time for the segments. If so then print yes else print no

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

    This is how I solved it. Maintain a multiset of all left borders and a multiset of all right borders. For each query binary search on the right border, if there exists a right border greater or equal to the current middle value of binary search and there exists a left border strictly greater than the found right border, the answer is yes. If you dont find such right border, the answer is no; Submission: 229250762

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

      or you can make a custom comparator for right border multiset which will eliminate the need for binary search.

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

    If there is some right bound which has smaller coordinate than some left bound, the answer is YES. Otherwise its NO.

    Now you need some data structure that can store all bounds that are still not removed and return the smallest/greatest one.

  • »
    »
    2 years ago, hide # ^ |
    Rev. 5  
    Vote: I like it 0 Vote: I do not like it

    Yeah, so basically you can maintain two multisets starts and ends, then for every operation if starts.size() (or ends.size()) is <2, the answer is NO, otherwise we can check that min{end} < max{start} (think about why this works by drawing intervals on a paper or something), if this is true then the answer is YES, else NO.

    Here is my submisison for reference.

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

Nice contest, I almost made it to E, and now we have to wait one more week till the next div2 TT.

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

Div2 C >>> D1, D2

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

I found the hacking system is much more enjoyable in this Div1+2+3. In the past div2 rounds, I often found participants in my room only solved A, and there is not much to do, but in this round there are 3 participants in my room solved A-E and many others solved A-D.

Maybe CF should consider arranging participants with similar rating in the same room in the future rounds?

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

Maybe Div2 D1/2 is much easier than Div2 C , only in my opinion.

So I think take part in Div1 is a better choice for me,probably.

But I'm quite far from Master. :(

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

    I quickly came up with an approach of C, but it took me a while thinking about D2. In my opinion, D1 < C < D2

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

Problem difficulty in Div1:

B < D < C < A.

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

One of the most intense contests in my life

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

Thanks to the authors for having

  • div1, div2 and div3 at the same time

  • another div2 on the same day!

Here is my advice about the problems (div2) :)

A
B
C
D
E

Overall I think that it was a good round! I'm looking forward to another russian olympiad round :)

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

Don't use unordered_map without custom hash... lesson learned

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

    Which calls for hacks... :(

    I am considering accepting the $$$O(\log(n))$$$ and going with the ordered versions.

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

By the way, I wonder what are people's opinions about the format of cf rounds. I think that it was pretty cool having div1, div2 and div3 separated to make the problemset more adapted to each division.

However, I think it would be cool to make the contests at bit longer, like 2h or 3h to avoid having one or two problems that are mostly solved by alts/new accounts and not tackled by others.

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

    I think a separate division for expert + CM should be used more often in the future because it makes the experience a bit more enjoyable for people in those rating ranges (e.g. less complacency at the end of contests).

    But I think maybe in such cases we should set problem A to be the difficulty of a typical div2B, problem B should be like an easy div2C (1400), etc.

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

    As a Div1 participant, I like this format rather than usual(Div1,2).

    • We can reduce the number of easier problems and make a time to tackle hard problems during contest (without extending the length of contests)
    • Soften the nightmare rating drop of very bad performed contests
    • More hacking attempt opportunity. Increse the number of participants who PT-passed harder problems in the same room.
»
2 years ago, hide # |
 
Vote: I like it +15 Vote: I do not like it

anti-unordered system tests? That's not very nice is it(

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

It seems that problem F in this round is just the same as this problem. Is this just a coincidence?

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

Pleasant limits in div2C. Nice day to the author for impeccable time limits and wonderful pretests!

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

    Kinda same thing, still don't understand what happened. Curious if somebody can clarify why did that happen. (ExTrEmE AmoUntS of ClariFiCation is required) 229253714

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

      In C++ unordered structures use default hashes unless you explicitly replace the hash. For int default hash is just int's value, so if you add a lot of elements with the same residue over some known modulus, the operations will start taking linear time and the solution will get TL. Didn't expect the authors to inlcude such tests though

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

        Why would anyone include such tests without putting some in pretests, this is retarded

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

    I found an argument suggesting people should use unordered_* with extra care on CF: https://mirror.codeforces.com/blog/entry/62393

    It is possible that Test 17 is a hack.

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

      I think so, a constant log(10^5) * 5 = 80 looks like something unimaginable for std::unordered_map in basic cases...

      This is at least not pretty, in relation to the participants of the round, to use antihash tests only in systests

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

    Got FST because of this as well...

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

    Div2C(Div3F) has testcases for anti-unorderd_map for C++. For example, testcase16 contain only 107897 * n as follows.

    1 107897 215794 323691 431588 539485...
    
»
2 years ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Div3 E: https://ideone.com/whDTDf

Does it gives wrong answer because I updated the values in the array, so it overflows, or this is not the reason ?

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

.

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

why does a basic while(a[i-1]>a[i])a[i]*=2, count++ not work? Please give a tc where this fails. also what's the intended solution?

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

After all this time

»
2 years ago, hide # |
 
Vote: I like it +41 Vote: I do not like it
Spoiler
»
2 years ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

I solved problem A in div3 correctly (that was the only problem I solved, and my only submission) but got my rating reduced by 65, pls does anyone know why this could have happened?

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

I don't think Codeforces current rating system is compatible for conducting Div 1 + 2 + 3. As number of participants is much less in Div 2, as compared to other rounds, as expected rating update is very peculiar on the normalized same rank.

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

Got FST on div2C for using std::unordered_set instead of std::set. Of course, anti-hash table test cases come from hacks, and this goes to show that hacking is a negative mechanic in Codeforces rounds.

The purpose of hacks has become that of giving a few people easy points by breaking hash-based solutions, and nothing more.

No one would argue that this is a positive thing, and Codeforces really doesn't shine when allowing this sort of unfairness to happen on the site.

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

Thanks guys for the contest!

Problem Div3B made me spend lots of time, luckily solved it after problem C!

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

    Yeah, I literally solved C, D, and E and then came back to B. B was kinda weird and very caseworky

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

Due to significantly low number of participants in division 2 , The rating changes were not satisfactory : (

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

Just a little personal opinion.

It's clear that contestants who've solved problems [A-D2] in Div.2 have the capability to solve all problems in Div.3.

For those who solved all the problems in Div.3, their performance score is greater than 2100. We can see some Experts (who got promoted from the last contest so they can participate in Div.3) receiving a +150 delta.

However, those contestants in Div.2, if they solve D2 at the same speed, would only get around an 1800 performance score. Some Experts might even see their rating dropped.

I think this seems a bit unfair. I'm not saying that the contest was bad; the problemset was excellent!

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

    That's life

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

    Thats life, I did real bad in the 904div2, got demoted to specialist but still had to participate in 905div2 bcoz ratings were not updated. Still managed to get back to expert somehow.

    but CF needs to modify the algo if they wanna continue doing this div1+2+3 thing.

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

    I think this problem is already present in div1/div2. There are some rounds where almost everyone in div1 solves div1AB but in div2, barely anyone solved div1B (maybe because an earlier problem was annoying or something). Then a low CM in div1 who solved AB would maybe get negative delta but in div2 he would have gotten huge positive delta.

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

I am just wondering if someday there will be parallel div-1/div-2/div-3/div-4 contests.

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

Thanks for both of the contests :D

A good day for me, gaining $$$200+$$$ delta!

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

great contest, had a little mess up on E & g2 I really like it when the number of alts is reduced due to most of them attending from their main bcoz of div1&2&3

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

Hi,

This was my first Codeforces Div 3 contest. I solved three problems and gained some rating. However, when I checked back in the evening, my rating was gone, and the contest had become unrated. Can you help me understand why this happened?

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

    They rolled it back to check solutions for plagiarism, everything will return after some time.

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

      There should be a message about this at the top of the screen during the plagcheck, ain't it?

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

      Alright, thanks for explaining. I read something about needing to confirm my intention to participate as "rated" in the contest, and it got me a bit worried.

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

In Div2C / Div3F,

What is the intuition behind the below statement?

Note that a subarray suits us if a[l] is the leftmost occurrence of the number a[l] in the array and a[r] is the rightmost occurrence of the number a[r] in the array.
  • »
    »
    2 years ago, hide # ^ |
    Rev. 2  
    Vote: I like it +4 Vote: I do not like it

    suppose that you have the l r of the subarray, when does this subarray can be reproduced as a subsequence if and only if the first value (or more with the right order) are with index <l (the same logic with the end of the subarray for index>r) we can think about the first and the end of the subarray (to lessen the cases)

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

Maybe I'm the only one using segment tree + lazy prop in div3D LOL.

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

nice problemsets! really challenging and interesting, RP++

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

can any one tell why this submission 229370372 is giving WA on testcase 2 for div2D2.

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

Where is the information about icpc challenge? The button in the main menu links to an empty page...

upd. issue resolved

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

Why the answer to 4th Example test case is 7 in Problem F[problem:1883F] Div 3. According to me it's 8. The segments are {3},{1},{2,3},{3,2},{2,1},{2,3,2},{3,2,1},{2,3,2,1}. So there should be 8 segments.

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

get back to Expert lol :(

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

I have recently got a plagiarism notification for question 1883-D. The solution which I submitted was a pretty generic solution. It coincidentally matched with some other participant (Shivam_Jha) who even had a similar template like I have. In fact many other participants and even the editorial had a similar (almost same) solution. I am attaching some similar solutions that I have a found.

My Solution

Shivam_Jha's Solution

Other similar solutions: 229297769 229325508 229223552

As far as the template part goes, we have been using this similar template for over a year now.

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

Hello, Codeforces.

I managed to solve 5 problems in this round. But later Codeforces algorithms found my solution to the D1 problem similar to another solution. I looked — yes, the solution is almost identical. You can make sure that the solutions are indeed similar: https://mirror.codeforces.com/contest/1888/submission/229228883 — my code, https://mirror.codeforces.com/contest/1888/submission/229262126 — someone else's code. But I would like to challenge the decision to write off.

Firstly, I do not know the person who owns the second code. Secondly, I think that copying so close to the source code is stupid, since there is a check for cheating. Thirdly, task D1 is a problem with an obvious solution. If solutions to problems where it is necessary to derive a formula are not banned, then why is the task where it is necessary to write a standard bin search for O(nlogn) banned?

I hope for an individual consideration of this case.

Good luck to everyone!