Where I can find rajat1603? If you don't know him, he is one of the respected competitive programmer in India. Just in my recent times I was trying to find out where he was practicing :P. However I could not find any of his submissions from the well-known sites. For this season of ICPC, I was wondering where he was practicing from.
He could be using fake accounts to submit. :O
No hate, but I would love to know why some Indians are usually overly obsessed over good competitive programmers.
Because its important to remain keen to learn new things, and as it's said, you should strive to learn from the best. If that's what indian's are doing, i don't think there's anything wrong in it.
LoOoOoOoOOLoOoOOOoOOLooOOoOoOL. LMAO. ROFL. There are so many ways to learn new things, not just through CP. Well, indians are obsessed with good competitive programmers because CP is one of the "only" ways that they can get into a big tech firm. This has been mentioned by quite a few indians already. This is quite a stupid way to think. But if your country requires you to think that way in order to survive...what else can you do?
Some might feel so, however, i don't feel that everybody do CP in india to get in Big firms. That is a consequence of mere practice you get from this sport. I feel that You were rejected by smaller firms too and hence are free enough to spill such nuisance in the Comments of Codeforces. Well thanks for entertaining the community with your "LoOoOOOoooOooLoOoOoooOooOLooOooOOoL. LMAO. ROFL."
LoOoOoOoOOLoOoOOOoOOLooOOoOoOL. LMAO. ROFL. I rejected all indian companies who offered me jobs because I felt that their organization were filled with imbeciles who thought that "CP" actually makes you a programmer.
Thank you a lot for helping us making our environment Clean!!
Loololol. LMAO. ROFL.
Rajat isn't the best, he isn't even an IGM. Hundreds of people are better to learn from. Indians should learn that they suck and start following other non-Indian competitive programmers.
It's clear that IAmNotGood has an obsession with rajat to create this blog post. He should stop his obsession and practice more. I have confidence that once he follows someone like Radewoosh, he will be better than rajat.
shit comment
What's the point of following someone way better than you (like Radewoosh), you won't be able to solve the problems he solves, you need to go up step by step
And that's why you should follow step_by_step!
I don't think that means you should obsess over him like crazy. If he doesn't want to do competitive programming things right now then let it be so. People can take breaks for various reasons, note that this doesn't mean they won't be successful in their next major contest. Also there are many ways that one could be practicing so that it doesn't show up. For example when I was in Petrozavodsk I only did the contests there and upsolved them. For an outside observer it might seem like I was doing nothing at all.
If he wants to explain he can do so but right now this behaviour is almost stalkerish. This also goes for people who obsess over Radewoosh, tourist, Benq or anyone else.
Also do you guys seriously learn by reading someone else's code? In my opinion that is one of the worst ways.
Looking though stronger participant's code can give you new ideas and implementation tricks. Sometimes you can find solutions that are so short, clean and self-explanatory that reading them gives you understanding of both: the ideas behind solution and the way to implement it.
Yes, usually it does not give you any proofs or explanations why this solution works. And some of solutions can be very large and contain some complicated logics, so understanding the ideas becomes really hard. But sometimes it is definitely worth looking though others' solutions.
I think, just asking idea of this code from author of code is better than understanding idea of code by yourself.
Sadly, that's not always possible.
Original author might be too busy or inactive, so he will not answer you. Or sometimes you want to ask about the code he submited few years ago, in this case he might not even remember that he ever solved this problem or he might have changed his coding style a lot and does neither remember the idea of submited solution nor understand his old code quickly.
I can barely understand code I wrote yesterday, how am I going to learn from other people's code ;-;
Uh, even in this case looking though others' code might help you to develop coding style that will make your code understandable for you.
Is it worth the effort?
The main hard part about competitive programming is thinking and you aren't going to get better at that by looking at the end result of someone else's thinking process. Particularly one that was written in a hurry and contains things that would, in other contexts, be called "unholy" or "a monstrosity".
I also see a very real danger here. Suppose that Grandmaster Alice implements a variation of a standard-ish algorithm. There are a lot of special cases but Alice, having a very good understanding of the algorithm, realizes that half of them don't actually happen in this particular problem and skips implementing them. Later, Specialist Bob reads Alice's code, doesn't realize that half the cases are missing and tries to apply the algorithm in some other problem. He gets WA, becomes extremely frustrated. He then proceeds to post the code in Codeforces under the title "wy dose this giv WA" with no explanation whatsoever.
This is not some hypothetical story either. Do you know how many people do not understand how
std::memset
works? I have seen a lot of people getting bugs because ofmemset(arr, 1, sizeof(arr));
or similar statements in code (wherearr
is an array ofint
s). I bet a lot of them sawmemset(arr, 0, sizeof(arr));
ormemset(arr, -1, sizeof(arr))
in some experienced user's code and got a very wrong idea about whatmemset
does. Please, try writingWhat is the output? What if we replace
int
bylong long
?Implementation tricks are neat, but there are not so many and I've managed to pick up quite a few without reading other people's code regularly.
Can you explain why this behavior??
is it very hard to google "how memset works"?
Yes, learning to think by analysing someone's result of thinking process is not always a great practice. But in my opinion, this is not a rare case when you can reconstruct the whole solving process just by looking over the proper solution.
This process is similar to reverse-engineering. You open the code and think in a way like "Okay, here we can see standard-ish algorithm name implemented, probably with some modifications. So we can assume that problem can be solved with it. Author used usual
int
s here andlong long
s here, so we can see that this part of calculations can be done inint
s and this part likely cannot. But author ommited implementing this and this special cases. So we can assume that they cannot be achieved in this particular and similar problems (and test cases are strong enough, of course)..."It is like you are given a bunch of hints for this problem and combining them with your own ideas might be enough to understand the solution and implementation.
Yes, to do that you must be familiar with algorithms used, be familiar with special cases that usually occur there and data structures used. Of course, it is only your responsibility to prove exactly why every line and token in code works here and analyse when it will work and when it will not.
But the benefit of this method is that you see the exact code that is responsible for this. And sometimes you think "Yes, this is short, cool and clear. If I can prove why it works I will definitely use this next time instead of 50 lines of own-invented code."
From my experience I've had few of similar moments when I've looked through one's code. Last time it happened to me that I remember clearly was Radewoosh's solution for problem 101611I - Infinite Gift from gym 2017-2018 ACM-ICPC, NEERC, Московский четвертьфинал.
When I've opened solution it became clear for me that we can see some sort of Gaussian method with bitsets. So given problem can be reduced to this problem modulo 2.
We will add additinal variable to count number of steps modulo 2 for each vector. Find basis. And then check if any of the excessive vectors atfer zeroing by basis have odd number of steps it shows that we have odd loop in our lattice.
And the idea of building-in this additional variable into usual Gaussian method flow was really cool. Probably this is somewhat well known trick. But it was not for me.
I'm not saying that this is the best learning method. Of course not. Probably this method will not be suitable for everyone. But it is easy to see when you are getting lost for few minutes in one's code and cannot understand anything, in this case you can try looking through another solution or stop doing that for this problem.
I think what you described mostly apply to cases where reader just blindly copy paste and don't really try to understand what's going on in the code. e.g. In your memset example, only lazy people will just use the function without knowing what it does. These people will fail no matter how they learn.
Some examples where reading code helped me in the past:
When I was young I did not know how to implement binary search. After reading several different implementation I finally found one where I understood and use since then.
For many problems I found solutions better than mine. Especially for easy problems, just knowing the problem can be solved in a certain way is a big hint on how to solve it.
You copy template ¬_¬
I don't understand what you're trying to say.
Realest comment here
LoOoOOOoooOooLoOoOoooOooOLooOooOOoL. LMAO. ROFL. I know why he stopped using his actual handles. Probably because he received too many PMs from his fellow countrymen of the form "hello sir. please tell how to become red in one year."
Hello Sir. Please tell me how to involve myself at unwanted business.
Hello sir, Please tell me how to be an attention whore.
LoOoOoOoOOLoOoOOOoOOLooOOoOoOL. LMAO. ROFL. You just have to be indian.
Hey, can you please stop doing such stupid things?
You are Rajat DE
Plot thickens
Aah, I knew someone was going to accuse Indians of being obsessed stalkers.
Where is Errichto? — Codeforces with 340 upvotes.
Uhm? Hypocritical much?
Both people who mentioned ethnicity are obvious unrated trolls so your point is not really that meaningful. Also this blog has a decent number of upvotes, too.
Well I'm sure you'd be aware of the stereotype about Indians on CP sites. Its not just alt accounts that brand us like this!
Maybe he is the face behind DearMargaret :P
Sources close to him have revealed that he practices on szkopul.edu.pl . Now don't waste your time.
Okay. Thanks :)
Everyone asks "Where is Rajat De?", but no one asks "How is Rajat De?".
"Who" is Rajat De?
I get this information from Rajat friend that he has lost interest in cp and now aiming for becoming pornstar.
Let's be real, he cannot be a pornstar he is an indian.
He will be in AVN adult expo 2019 its no joke bro.
Tell that to a certain Sunny gal.
XD
For all the curious ones, he made a submission after 5 months today.
Okay so Rajat De who was last online 4-5 months ago just randomly appears and ACs what appears to be a trivial dp problem to him, The question is why that particular problem , there were many other hard problems he could have solved.This clearly indicates that he has a fake account. Someone please find it and help the OP in his quest of finding the secret behind Rajat De's Pr0ness.
Hello,
Thank you for the invaluable information.
At the moment I am reporting from the depths from South America, as I proceed my search for Rajat De with my fellow team of highly expert professors for the topic of finding missing CodeForces members (it consists of only about 14 people, and we picked the best 14 out of approximately 3-4 million candidates, so I doubt you have any chance to actually join). Within the 14 we have some psychologists who might have a good guess as to where he could go after such an extremely unusual behaviour (who in their right mind will stop solving problems!).
You are probably asking yourself "but why in south america?"... well if you are then it seems like you are not updated. Searches over the world in specific locations have already been conducted, with no good results. These locations include India, Russia, USA, Canada and a couple more. If we are already on this topic, then I'll also share that recently there was also a search deep in the Pacific Ocean (and I mean underwater... the surface of it was already searched beforehand). I mean if you think about it, it would make sense — if I wanted to disappear and possibly practice without nobody noticing, the ocean would probably be my go-to place. Anyway, they planned to search down to the depth of 600 meters, and interestingly at the depth of 583 meters, they actually found a puppet of Rajat De! I can say, with no doubt, that Rajat De knew the depths of the Pacific Ocean will be searched, and he is planting traps.
Anyway, some parts of South America have not been searched yet (mostly underground), which is why we are here right now... but we currently have no results.
Finally, why is your information important, you may ask. Well it's helpful because the very specific problem he solved is of type "DP". Only experts will even consider the possibility that this is a clue! For example, it could be possible that he is actually hiding in some Domino's Pizza, or maybe that he is drinking Diet Pepsi at the moment. This definitely diminishes the possibilities.
I will update as soon as new discoveries are found... hopefully we find clues before the planned trip to Mars.
Upvoted for shitposting effort
tmw you're preparing for a writing test but still want to be on codeforces
His team is qualified for ACM ICPC World Finals 2019 by got 1st rank at Kharagpur regional.
He is the best !!!