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

Автор pashka, история, 3 года назад, По-русски

Привет! В 15.01.2024 17:35 (Московское время) начнётся Codeforces Round 920 (Div. 3) — очередной Codeforces раунд для третьего дивизиона.

Раунд скоординирован Vladosiya, и подготовлен мной и студентами Neapolis University Pafos: Vitaly239239, goncharovmike, ikrpprppp, step_by_step.

Большое спасибо Alexdat2000, dan_dolmatov, fastmath, FBI, Nickir, nikhil97agra, pavlekn, PMiguelez, JuicyGrape, ibraevdmitriy, Sergey140146659, Sparrow_Guo, Toy_mouse, vladmart за тестирование раунда.

Как обычно для раундов третьего дивизиона:

  • в раунде будет 6-8 задач
  • длительность раунда 2 часа 15 минут
  • раунд проходит по правилам ICPC, штраф за неверную попытку 10 минут
  • раунд рейтинговый для участников с рейтингами до 1600
  • после раунда будет 12-часовая фаза открытых взломов

Напоминаем, что в таблицу официальных результатов попадут только достоверные участники третьего дивизиона. Как написано по ссылке — это вынужденная мера для борьбы с неспортивным поведением. Для квалификации в качестве достоверного участника третьего дивизиона надо:

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

Независимо от того являетесь вы достоверными участниками третьего дивизиона или нет, если ваш рейтинг менее 1600, то раунд для вас будет рейтинговым.

Всем удачи!

UPD: Разбор

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

»
3 года назад, скрыть # |
 
Проголосовать: нравится +47 Проголосовать: не нравится

Can't wait to pass 1500

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

Wow! Translation into Russian

»
3 года назад, скрыть # |
 
Проголосовать: нравится +6 Проголосовать: не нравится

Good news!

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

Надеюсь снова вернуть ученика после этого раунда

»
3 года назад, скрыть # |
 
Проголосовать: нравится -17 Проголосовать: не нравится

As a tester, I fucked up during previous contests because I was poisoned( but I wont give up and will restore my CM status.

»
3 года назад, скрыть # |
← Rev. 3  
Проголосовать: нравится +4 Проголосовать: не нравится

Am I right that round was rescheduled from 16th of January ? If so, its very unusual. For me I was planning to take part and made some effort to free 2 hours on Jan 16, but tomorrow it will be impossible... Or I just had a glitch about 16 ? )

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

Yet another post-contest discussion stream Upd: I have updated the link. Sorry for issues in the begining.

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

Finally my turn to write this...

My first unrated div 3

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

This comment has been deleted.

»
3 года назад, скрыть # |
 
Проголосовать: нравится -12 Проголосовать: не нравится

My first unrated div 3

»
3 года назад, скрыть # |
 
Проголосовать: нравится -9 Проголосовать: не нравится

i wish get 1400

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

Good morning pashka <3

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

pashka кандайсыз?

»
3 года назад, скрыть # |
 
Проголосовать: нравится +33 Проголосовать: не нравится

I usually skip div3 these days, but I'll do this one just because of pashka :)

»
3 года назад, скрыть # |
 
Проголосовать: нравится +38 Проголосовать: не нравится

Please restart your youtube channel with some new series, pashka orz

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

Any way to lower by rating by 12 ?

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

the round will be good if pashka prepared it)

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

ॐ

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

My first contest here :)

Got a question: a "penalty for an incorrect submission is 10 minutes" means that there is a timer and it takes 10 minutes away (so the round is 1h 5m for me), OR does it mean that I'm just banned from submitting code for the next 10 minutes, but I still have the same remaining time for solving problems.

»
3 года назад, скрыть # |
 
Проголосовать: нравится +6 Проголосовать: не нравится

As non-tester i confirm this is the first Div.3 after new year!

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

All the best to all of you guys!
I want to reach exper in this round :)

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

Hopefully, the problem's statement will be short, precise, and easy to understand!

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

My first unrated Div 3.

And pashka as one of the setters , can already confirm it's going to be an awesome coding contest!

»
3 года назад, скрыть # |
 
Проголосовать: нравится +12 Проголосовать: не нравится

Amazing round I love U all <3<3<3<3

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

Какие бархатные красавцы на фотке

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

Baby, I I I can`t wait ! ! !

»
3 года назад, скрыть # |
 
Проголосовать: нравится -11 Проголосовать: не нравится

with all due respect, problem C is just kind of shit.

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

time to attempt the first question only to get it wrong on pretest 2 and ragequit (my rating still gonna go up lmao)

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

is F solvable using Mo's?

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

How to solve E ?

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

is F solvable using Mo's?

»
3 года назад, скрыть # |
 
Проголосовать: нравится +1 Проголосовать: не нравится

Nice contest. F and diagonal prefixes in G are tricky, nice problems for educational rounds.

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

nice round especially providing many sample test cases thank you

»
3 года назад, скрыть # |
 
Проголосовать: нравится -9 Проголосовать: не нравится

Exposing cheating case please make the contest unrated the solutions were live streamed on the following channel

https://www.youtube.com/live/q5YxSQlknAQ?si=rM_nl9XokelPGkJF

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

Got Stucked in Problem E.

»
3 года назад, скрыть # |
 
Проголосовать: нравится +4 Проголосовать: не нравится

Thousands of cheaters in this round. saw some noob coders solving DE faster than specialists. hoping they will get filtered out for fair rating update

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

In problem E what do they mean by if both opponents play optimally , do we have to check every possible move from current position, and move only in those direction in which player is winning?? i am not able to understand this problem please explain. Thanks!!

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

    play optimally means that if there is a winnig state for player A, then player A will play in such a way that will win.

    No need to check every possible move if you find a general case for wich A wins

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

I tried to come up with a one-line formula for B, but this approach gives WA in the 3rd test:

max(((s & f) ^ s).count(), ((s & f) ^ f).count())

Does anyone have any idea what I might be missing here?

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

mind solved f in 10 minutes, could not debug my code in contest with more than an hour left. then debugged within 5 minutes after the contest!!!!!

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

    can you explain your approach for the problem F ?

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

      2 cases case 1: when d>sqrt(n) in this case you can just brute force each query because will take O(sqrt(n)) time because if d>sqrt(n) there will be no more than O(sqrt(n)) elements to choose from i.e., k cannot be greater than O(sqrt(n))

      case 2: when d<=sqrt(n)

      for each element in i store prefix sums and for each d and also store increasing prefix sums (1*arr[i], 2*arr[i].. like this) then solve in O(1) per query.

      i did not explain case 2 very clearly i am finding it very hard to explain.

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

Hello, CodeForces!

I am aware of the fact that my observation might be slightly necroposting, but you forgot to thank Mike Mirzayanov for the great Polygon and CodeForces platforms!

Have a pleasant day!

Cristofor

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

I don't know why, but I do very well outside the contests but when I participate I feel stupid, I didn't even solve D.

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

I am an amateur I have just solved one problem I just want to ask can I have some score? I hope I will have 1200 through this vacation's effort Can someone explain to me how can I get some score

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

    With 1 solve and your default expected performance being 1400 you should expect a huge drop in rating. However since you're unrated, there's a +500 bonus on the first round, so your rating will still increase.

    You would need to wait for the system test to end, which would happen about 18 hours from now, since there is open hacking phase.

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

Such a nice contest! really liked the F. overall quality was great and the contest was balanced , 10/10 honestly.

»
3 года назад, скрыть # |
 
Проголосовать: нравится +1 Проголосовать: не нравится

how to solve F and G??

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

Too many cases in E, solved just after contest ended :(

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

Sqrt contest)

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

can someone give me clean implementation of F?

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

How to solve G?

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

    Make diagonal prefix sums, like 2d prefix sum and try each of 4 possible directions in O(1) for n*m shooting squares.

    I failed to implement it in time

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

    Bruteforce every possible starting location. To move the starting position by one cell you need to add/remove subsegments of a row, column, or diagonal. From here it's down to your implementation skills.

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

    There is a simple solution in $$$O(nm*min(n,m))$$$.

    Assume WLOG $$$n \le m$$$, The solution is: iterate over every $$$(i,j)$$$ as the start location, iterate over every row $$$x$$$ that the $$$(i,j)$$$ will reach with the operation, find the sum of the elements of the row that is in the range of the operation with simple prefix sum.

    This work in O(n^2 m), if $$$m \lt n$$$, just rotate the input. This is code: submission

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

    I had a slightly different solution:

    Solve the problem for the down/right diagonal only. Rotate the grid four times and print the best answer over each rotation.

    To solve for the down/right diagonal, notice that a shot from point (r, c) of size k is equivalent to a shot from point (0, 0) of size k + r + c, minus the combined number of targets in the first r-1 rows of that shot and the number of targets in the first c-1 columns of that shot. This can be found using inclusion/exclusion and prefix sums.

    So, we can enumerate the targets in order of their Manhattan distance from (0, 0) and check starting points for the shot using a sliding window technique.

»
3 года назад, скрыть # |
 
Проголосовать: нравится +28 Проголосовать: не нравится

Problem D  In some test cases, t is 10000 (which is not correct)

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

Can anyone tell me why my solution of D is giving me wrong answer on test case 3

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

Good Round

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

Nice F, btw this is the worst E i have ever seen in div 3

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

Can today's D be solved by binary search?

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

    my approach was to club max elements of A with min elements of B and Max elements of B with min elements of A.

    And there will always exist an index i before with we'll club max elements of B with min elements of A and after index i we'll club max elements of A with min elements B

    I brute forced it. It gave tle on tc7

    Now i want to ask that if this can be optimized using BS. BS to find that optimal index i?

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

I have solved all the problems except the last one. I am willing to discuss the solutions with you. If you need help for the hints or solution idea, you can knock me.

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

Just curious, is D solvable using ternary search?

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

    my thought process included noticing the ternary searchable array. But since we're trying to maximise the answer, optimal points will be on either left or right ends.Therefore no need to do ternary search. just have to check ends

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

How many problems I need to solve in Div3 as a pupil, to reach specialist ? Can someone tell ?

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

Can anyone tell me what the time complexity of my code(Problem G) is? 241841658

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

In F, I am trying to solve this question O(n*root(n)) but it is giving me TLE. I saw many people did it in O(n*root(n)). can anybody help me to find out where I am going wrong? My submission: [241845077]

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

In F, I am trying to solve this question O(n*root(n)) but it is giving me TLE. I saw many people did it in O(n*root(n)). can anybody help me to find out where I am going wrong? My submission: [241845077]

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

    Yeah, your solution is O(n*root(n)), but your index in vector is [arr_index][step]. If you know, vector stored continuously in memory. When you refer to [ind1][step] you need calculate offset to [ind1][0]. If say simply, need to calculate [0].size() + [1].size() + [ind1-1].size() and it's not effective. But if you start iterate by first index and after by second index it's more faster, because your elements in memory was close. You can turn your vector and get accepted 241873500. Or you can use matrix, because program know size of every lines. 241875600

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

Hi, I am new to codeforces. I submitted a code 10 minutes before the contest ended and it was accepted after 3 failed attempts , why is it still showing as unrated for me? And when will I get it get rated for me. Someone plz reply

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

Hello everyone. For D i used the 2 pointer approach to solve it. Basically sorting both the array then checking for each term in nth size array which difference is the maximum. Depending on the term chosen, the pointer moves and rechecks.

You can see my submission. I have gotten a test case where the solution fails. But i am not sure what is wrong with my approach. One of my friends used the same approach but deque and got the correct result. Any help would be appreciated.

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

Who else say E and thought: "oh yeah this is like opposition in chess endgames"

lol

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

My D's solution got WA on tc2 when submitted during contest. After System test it got AC. Now after System test again it got WA on tc24 .

What's the issue here? I meant on CF site, why did it happen?

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

241860369

Problem E.

Easy to understand one liner solution C++.

»
3 года назад, скрыть # |
 
Проголосовать: нравится +1 Проголосовать: не нравится

How much time will it take for the ranks to be updated?

Hope I reach pupil :)

And also can anyone explain what are 'hacks'?

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

when the ratings will get upated?

»
3 года назад, скрыть # |
 
Проголосовать: нравится +1 Проголосовать: не нравится

When will you release the editorial?

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

When will the ratings for this round be updated

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

Has system testing finished??

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

Ratings?

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

Can't wait to become PUPIL

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

Please, help me to understand problem )

This submission gives TL on test #12: 241773908
If I change only language (java 17 instead of java 8), the same solution gets AC: 241948448

I can't understand, why the same solution gets TL and AC on different java versions?

Thanks

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

This round Problem F have nearly same idea with recent atcoder abc contest 335 problem F. Problem link : https://atcoder.jp/contests/abc335/tasks/abc335_f

»
3 года назад, скрыть # |
 
Проголосовать: нравится +10 Проголосовать: не нравится

F Video editorial + Live Coding C++ (English): https://youtu.be/mJVq_nW8iQk

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

why my rating got reduced by 30+ points even though I did no wrong submission just only one submission I did why on the earth soes this hpnd?

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

    You did one task and in the result you got 20596th place, which is lower than "expected" for your rating. Also note that wrong submissions don't affect your rating directly, only the score obtained during the competition, which translates into your place in the standings.

    more info

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

Problem D is 1100 rated 😱 😱