Hello Codeforces!
I am pleasured to invite you to take part in Hello 2023, which will take place in Jan/03/2023 17:35 (Moscow time)!
This round consists of $$$8$$$ tasks waiting for you to solve in $$$150$$$ minutes, and will be rated for everyone!
As an author, please allow me to express my sincere thanks to:
- dario2994, for being responsive, his amazing guidance, helping me prepare one of the problems and his truly wonderful coordination!
- KAN, for rechecking and translating the round!
- wxhtzdy, for proposing rejected tasks and discussing every problem with me
- Giove, for a problem idea which fits a gap.
- Um_nik, gamegame, JovanB, Marko, cip999, nweeks, NemanjaSo2005, Sofija06, Fikuss, badlad, Jovan08, for providing valuable feedback and submissions during testing!
- MikeMirzayanov, for great platforms Codeforces and Polygon!
I hope you enjoy our problems and have a wonderful $$$2023$$$!
UPD1: New score distribution is $$$500 — 750 — 1250 — 1500 — 2250 — 2250 — 2750 — 4000$$$.
UPD2: Editorial is out!
UPD3: Congratulations to the winners!
UPD4: Also, congratulations to the first solves of each problem!
Happy new year and we hope it will be a happy year for everyone<3
Happy New Year dear friends. May this year be the cause of the best success for all people! I wish you health and happiness!
Thank you and I wish you too
Why so hard
why are you telling me (I'm not the author)
They want clout
Hi there, I'm new of codeforces, so to be consistent here I'm starting a 365 days of code streak. And this is also one of my New Year Resolutions. if you are a beginner, you can join also.
Rules:
1) Write a code for at least 1 problem on codeforces. You can start with the problems with minimum difficulty i.e 800. These problems take 5-10 minutes on average. Try solving one now https://mirror.codeforces.com/problemset?order=BY_RATING_ASC&tags=800-
2) After solving the problem take the screenshot of your whole activity frame like this and send in the whatsapp group. The reason for using whatsapp is to stay connected with the group daily as most people open whatsapp at least once a day. You can mute the group also. Can be moved to a website later.
3) Don't forget to have fun!
register here: https://forms.gle/X3FJ4Wug33npFmYk6
Why does your sign up form assume everyone has graduated high school? You know there are a ton of high schoolers (and some even younger people) who do competitive programming, don't you?
this post was originally for my LinkedIn circle where mostly were graduates, you can write N/A there.
Oh yeah, makes sense.
Please don't include the number 2023 in the problems. Last contest was somewhat amazing(!)
'Please print the answer multiplied by the number 2023.' never mind...
you are 2023*smarter than anyone here
I have a delta of -201 from last 5 contests, don't know how much time it will take to regain these lost points.
Maybe Hello 2023 will be enough, if you get a rank of 500-600.
Best of luck.
Thanks
around the same
Actually it depends on your performance and mentality, I've bad contest consecutively and get something like -250 (because I was just bored from contests, I didn't wanted to solve after B or something like that I was just bored), I became a spec after that while I was stuck on upper expert for months. But I was actually better than that, I earned +479 in 3 contests and became a candidate master finally.
Congo becoming master :)
;)
Happy New Year :)
Good luck in the first contest in 2023!
As a tester, I quite enjoyed the problem set. I hope that you will enjoy the first round of 2023 and I wish you a great New Year!
Waiting for the time where tester asks for the contribution after the contest or tester criticize the problem set may be the problems those were excluded.
The point of having testers is for them to criticize problems before the round so that round has good problems. Tester who says that problems are good to the coordinator, but changes after the round is a bad tester.
And yes, I (and many other testers) did criticize one problem which was removed from the problem set and is now replaced.
Happy new year! Wish to get positive deltas!
Wishing Happy New Year and Positive Delta for everyone.
Hoping for +82 and finally achieving Cyan for the first time.
go to magic section and flex on your gf
For that I need a gf
fax
Or you can be like me. Downgrade your colour, show your gf, then put your colour back to the original and she will be even more proud of you.
It worked, miraculously.
Happy new year everyone hope to see a year full of learning and success.
same
Because I am getting a lot of downvotes and I don't know why.
I mean, tourist isn't exactly undefeated. He has been passed a couple of times, including by Benq.
He always comes back to the top tho
Happy New Year Everyone! Hoping for positive delta in Hello 2023. Upvote for good luck in 2023.
Interesting score distribution!
WOW, Serbian round, guessing some good problems :) Happy New Year for everyone!
It is a good opportunity to start 2023 with good contest
Good luck in the first contest in 2023!
Happy New Year
As a tester one day , I hope this round is a good start of 2023 and I wish you a great New Year!
What kind of problems div1 or div2 or div3 or div4? Happy New Year
The round is combined Div 1 and Div 2. That means that problems A-F will be like div 2 A-F and problems C-H will be like div 1 A-F.
Happy New Year :D
Happy New Year!
Hope to see Happy New Year instead of Accepted
This is amazing
Happy New Year!
i think problems will be short and sweet, exactly like this blog.
Hello guys, I'm back.
Didn't ask.
QUE MIRA BOBO.
Happy New Year 2023
Happy new year 0x7e7!
One piece is real!!!
Happy 0x7e7!
Happy new year babyyyyyy
I hope this year will be a big start for many good things
wish every contester good luck and happy new year!
This year will surely be lucky :
$$$\left ( 2 + 0 + 2 + 3 \right ) ^{\left ( 2 + 0 + 2 + 3 \right )} \equiv 2023 $$$ $$$mod$$$ $$$ (2 + 0 + 2 + 3)!$$$
Happy new year to everyone! and good luck for the first contest of 2023.
How difficult will be tasks? div.3?
look Score distribution, and rate of problems u solved, the most of global round is good for everyone.
tourist vs Benq
HOW WILL WIN??
jiangly
jiangly fan is winner :)
Hope to get to Master!
bestest 100% Serbian round
Can't wait to score first negative delta of the year.
good luck
thank you :)
Happy new Year with a new round,good luck all of you.
Excited for this round.
I got -2 because judge is not checking pretest 1 . Please help!! I got penaly because of printing unecessary things T_T
Coders: How many pretests do you want in Task D?
Setter: Y E S
Still I got wa on tc 67 https://mirror.codeforces.com/contest/1779/submission/187858821 Got ac later though.
Benq is mbappe
Yes, and the tourist is Messi, he will take first place in the next championship.
and you are ronaldo :)
But he is not the real jiangly.
Benq orz. Back to Rank 1!!!!
seeing tourist and Benq submission times giving chills!!!!Benq orz
Good luck on sys tests everyone! ^_^ Hope I won't get fst.
I think the problems setters missed a problem between B and C,there is a bit high jump in difficulty from B to C.
bro in 2nd problem I'm printing 1 and -1 sequence for even and Not possible for odd
still showing WA why ?
Because it is possible to find answers for odd values of n.
For example, for n = 5, we could answer [-1, 2, -1, 2, -1]
it is only not possible for 3. it is possible for odd. prove that if n is odd then numbers in even positions must be equal and numbers in odd positions must be equal as well. now writing some algebra would prove u the right sequence
Because it is possible for odd.
1 -2 1 -2 1
— for any two consecutive items sum is -1 and sum of whole array is -1Only N=3 is not possible, for example in case of N=5: 1 -2 1 -2 1 is a good answer.
because it is possible to create a sequence for odd n, only for number 3 you should print "NO"
Atmost2nforces.
D <<< C if you know
DSU
Can someone give a hint on C?
priority_queue
Can't C be solved using Segment Tree with adding and RMQ, as an overkill?
Sufficient and necessary condition: - For all index i < M , sum[i][M] < 0 - For i > M , sum[M+1][i] > 0
The two subparts can be solved using priority queue.The greedy argument is to remove the smallest / largest number encountered whenever the condition is violated
Hint: priority queue
D I got TLE with Segement Tree for some reasonmy sub
Rebuilding your segment tree for every test case costs too much time.
It does seem so. Well that's really stupid of me. But I was in time scramble during the last 20 minutes
Actually D <<<<<<<<<<<<<<< C if you know
monotone stack
There are two corner cases, which i found at the end of the contest. First m=1 (we don't need to check a1 <= 0). Second: (because of this wa2) the sum of prefix a1...am may be positive, neutral and negative(not only non-positive). The solution goes from transformation of inequality(destroy identical terms from left and right and you will get necessary and sufficient condition), given in the task for k>m and k<=m and considering corner cases...
how to solve for n = odd . problem B ?
I have done like this. Let the entire sum be s. So A[0] + (A[1] + A[2]) + (A[3] + A[4]) ......(A[n-2] + A[n-1]) = s => A[0] + (n/2)*s = s; => A[0] = s(1-n/2)
now A[1] = s-A[0] and similarly you can calculate for A[i]'s.
for n=3 . its possible A[0] = 1(1-3/2) = 0.
You can list n equations. And then, the odd position number is all equal, and the even position number is all equal as well.
Let $$$x = \lfloor \frac{n}{2} \rfloor$$$, then $$$a_{odd} = x, a_{even} = 1 - x$$$. The sum of this array is 1.
the seqance will look like this : $$$ x, y, x, y, x, ... $$$
for $$$n=2k+1$$$ the number $$$x$$$ repeat $$$k+1$$$ times and the number $$$y$$$ will repeat $$$k$$$ times.
the sum of the numbers are eqaul to $$$x(k+1) + yk$$$. thus we have
$$$x(k+1)+yk=x+y\Rightarrow x(k+1)+yk-x-y=0 \Rightarrow xk+y(k-1)=0 \Rightarrow -\frac{xk}{k-1}=y$$$
if we set $$$x$$$ as $$$k-1$$$ we can find an answer.
Let the sequence be:
The problem states that every adjacent pair must be equal to the sum of the whole array, then
So let's take a closer look to this equality
Therefore you'll have something like this
If $n$ is even then we fall into a trivial case where
where $$$k = \frac{n}{2}$$$ because you have $$$\frac{n}{2}$$$ pairs of $$$a_1 + a_2$$$. Then you can make this equality work if $$$a_1 + a_2 = 0$$$ so you choose some $$$(a_1, -a_1)$$$
The problem is that for an odd $$$n$$$ you have the equality like this
And that implies that $$$ a_2 = k(a_1 + a_2) $$$ so
For this equality to work you need to make $a_2 = k$ and $$$a_1 = 1-k$$$
The only case where this is invalid is when $$$n=3$$$ because this would imply that $$$a_1 = 1-k = 0$$$ which violates the problem constraints
TLDR: For odd $$$n > 3$$$ then choose $$$(1 - \lfloor\frac{n}{2}\rfloor, \lfloor\frac{n}{2}\rfloor)$$$ else choose $$$(x, -x)$$$
Could someone help? Why I got runtime 187832356
It was a nice contest, thank you. Sad, that i can't solve C... But it's ok, since this one was a quite balanced round
What is wrong with my last submission for C?? Can anyone help me out https://mirror.codeforces.com/contest/1779/submission/187833659
I think you'll understand from the test
3 3
1 1 1
I think maybe, you made a mistake in the second for loop, where i goes from m-1 to 1 and u have put the limits as m-1 to 0.
I made a similar mistake during the contest.
Because whatever be the value of a1, condition a1+a2+a3...ak >= a1+a2+....am is satisfied always [a1 >= a1 + a2 + ... am leads to the condition a2 + a3 ... am <= 0].
Would you please debug https://mirror.codeforces.com/contest/1779/submission/187786889?
Someone in my room used a set instead of multiset for problem C. it is obviously wrong but i had a very hard time finding a hack test. any ideas ? i tried some numbers and i probably could get a sequence with n = 10 ish but i thought the hack test must be easier. unfortunately i didnt have enough time
Try
yeah i thought so. i dunno i guess the stress of the time got to me coz i was calculating huge numbers instead of sth easy like this
It was a wonderful round consisting of balanced problems with clear description. Thank you!
Any hint for problem E?
Plot wins as a graph. Look what that graph looks like. What happens with SCCs?
did um_nik tell you that B and C are garbage?
Why do you think they're garbage?
Great contest and amazing problems! Congrats to the author!
i had a negative ammount of fun doing this contest
Love tasks of this type, especially B
Any idea for E? I solved by first build a tree by n-1 queries (first root=1, then for i=2 to n, do query(root,{i}), if response==1 we add an edge from root to i, else we add an edge from i to root, then let root=i), then the final root is CM. Then we try for every node i which is not CM, we do query(i,CM), if response>0 we add i and all of its ancestors into CM. But I just iterated i by natural order then I got WA on test11. Is there any better ways to choose such i to get AC?
Awesome Round!. The problems were very interesing.
First time ever I solved a segment tree problem... I wonder whether D was easier than usual BTW in which category these global round lie?(DIV1?DIV2?B/W?)
Global rounds are div1+2
This is my first time solving F at div2- round and I'm really satisfied with this round. Hello 2023!
isn't D just finding the maximum value in non matching segments of array $$$b$$$ using segment tree for all the values of $$$b$$$ (from max to min)? or am I missing something?
For D: https://mirror.codeforces.com/contest/1779/submission/187833014 What is the time complexity of this? Shouldn't it pass?
I am not sure but
vector<vector<int>> st (k + 1, vector<int> (MAX_N));
may be slow.Yesterday, I convinced my self not to think about using segment tree as the first thing that comes in to mind. I wont forgive you for making me code a segment tree after trying for an hour to find a solution not involving it :(
First time used PriorityQueue and SegmentTree in contest (for problem C and D).
benq now on first spot lets see how many days he can hold that position
What's the problem of this solution of D? Thanks for checking my code. 187831769
Try
Thanks for your test case!
Getting strong pe 716 vibes from problem G
Apart from this, thank you for the contest!
Happy New Year Everyone and Thanks Authors for the amazing contest!! Problems were enjoyable
When I attempting F, I was always thinking $$$6$$$ queries is suitable for $$$2n$$$ queries problem...
Yes, $$$2n$$$ makes the problem harder lol.
I have an idea for problem D: sort the razors from small to large, and then think backwards. Assuming that all the hairs are on the termination condition, use the Disjoint Set to maintain the maximum operating range of a razor, and calculate whether the number of razors is enough. However, the result of my submission is WA on pretest 2. Can someone help explain it? Thanks!
my code for problem D
Try
Oh, I know. Thank you!
Starting two were easy and inside i was thinking yeah... new year's 1st contest is going all well.... And here comes problem C.. hmm ok approach done... all done.. But but, what is this Run Time Error on test case 2 bro. :( I got RTE like 3-4 times and at the end my brain was like, lets drop CP for few days :(
Looking at the code block above. Before this block being executed, the value of sum is the sum of a[i] where i>=m, with some of them fliped sign. In the case of (arr[m-1] > 0 && m!=1) the code reset the value of sum to 0, but in the other case, the code executed [+=] which remained the value processed for i>=m. This will cause an error when doing pq2.top() because the value of sum is too large, and there are not enough elements in pq2.
i love this contest
I'd say problems are nice. Not blaming on anyone, but hope I'm not the only one who think stronger pretests could have made this contest better with less FSTs :)
Happy new year~~
It was my first time that I solve D and only submit it for one time! :)
I love this contest, it's brilliant! And also, problems are very good too!
Nice problems orz n0sk1ll
I don't know that why B give the array a limit of 5n. And it takes me a bit time to think "why the problem gives the limit of 5n?"
btw, I even don't know why when I don't use long long at the C, it returned Runtime Error.
Perhaps the purpose of giving the limit of 5n is let the codes pass which are not implemented best. Also this can confuse someone to think "perhaps the best solution is slightly smaller than 5n", but I think this kind of strict limit could seldom appear in Problem B.
Thank you,FST D.
The problems were really interesting. Thank you authors for the contest.
Maybe I should seriously practice div2As [Lol]. Second straight contest where I had to write a brute force program to find whats wrong with my A
Thanks for the contest! I liked the problems and also the loose limits for E and F (I mean $$$2n$$$), which actually made the problem harder (at least for me).
Nice round.I enjoy it:)
Maybe E does not seem so difficult as F while they shared the same ratings,but that doesn't matter.Anyway,Happy New Year!
I participated after a three-and-a-half-year absence. It was a wonderful set of problems. I'm glad this round was the one after so long.
I've participated after an exactly three-and-a-half year absense in GoodBye Round 2022. My delta was -1 and thus my graph looks funny now... but well, Today it's going to get waaaay lower hahaha.
Just a random fact, you can continue scrolling.
Multiset...
Did the same mistake, but realized it when solving D, see my submissions :)
What a Contest in which Jiangly's Fan Beats Jiangly
Problems are amazing ,although not able to solve C
My bad. Solved D just 1 minute after the contest. Wasted a lot time with C. D was comparatively easier than C. My D submission 187838181 (No heavy algo used).
Pretest of C very weak
Could've solved D if I just had one more minute.. I think it is easier than C but I wasted too much time on C. a sad start of 2023 for me.
How to solve D I am getting TLE https://mirror.codeforces.com/contest/1779/submission/187829415
See my Code, just mentioned 2 comments earlier. Think it like histogram.
In problem D, I got AC during the contest, but after the contest it shows me wrong answer in test #1. Acutally it was runtime error for test #1 and I don't know why it passed pretests. NICE ROUND :)
TOURIST ERA IS OVER
bro his rank is 2.
Can someone tell me why you don't check the first index in problem C?
because there is no sum before the first index
Do you mind giving me a case where doing what I did would fail?
wait
How is the correct result 0 if the prefix sums are: -5, -1, 4. Aren't the other ones less than the last?
sorry,this is wrong
first line:1 second line:3 3 third line:5 4 3.your result is 1,but right ans is 2.
I think your make another mistake.
Nah I'm getting 2. I'm talking about my 2nd to last submission during contest.
I use your last submission
Why I don't see my rating? was it unrated for newbies?
Rating is not updated yet.
Congratulations Benq for becoming the number 1 user on Cf... I wish tourist reclaims the spot in the next contest :(
Well Done Benq. Such performance at this young age is really mesmerizing.
How old is he?
21 or 22 I believe
I submitted B 3 times out of which first 2 where wrong on pretest 2. So it says — 50 points penalty on wrong submissions. I still cant figure out where those penalty points are cut. Please help Coz i am not able to figure out meaning of penalty on wrong submissions.
Have a look at this blog
finally cyan!
Congrats for becoming specialist.
thnx man
Benq orz. Back to Rank 1 <3
Problems are amazing and interesting!
I hoped to be a specialist in 2022,but I became to a specialist in the first contest of 2023.
could someone please explain dsu approach for problem D ??
I was checking the approaches people used for problem D. I found it confusing and complicated I tried making a simple solution using no sorting, segment trees or any complicated data structures and just used monotone stack-
I have made a video on this let me know if you find this useful :here
It is almost the same idea as the famous histogram problem
you meant infamous :P ? it has ruined the interviews of several candidates.
why is the link not working for me
I think there was some issue with the link — I have changed it now could you please check again ?
why round is marked as unrated?
Where is my +99 rating points?
UPD: the rating was recalculated.
round marked as unrated
Can anybody help with my submission of question C 187780125. The test case on which it is wrong is pretty huge :(
Take a look at Ticket 16667 from CF Stress for a counter example.
thanks
the rating was recalculated and I got additional -1 rating. Sad!
(In the other hand this make me a bit easier to get positive Delta in the next contest)
Your solution 187786383 for the problem 1779C significantly coincides with solutions posij118/187758161, lavijiang/187786383.Can I say this is really a coincidence? The solution of problem c is really obvious.I really didn't cheat in this contest.
Shouldn't I report about a guy who asks about solution during the ongoing round?
Ram Ram