| # | User | Rating |
|---|---|---|
| 1 | jiangly | 3810 |
| 2 | Benq | 3676 |
| 3 | Kevin114514 | 3655 |
| 4 | maroonrk | 3463 |
| 5 | strapple | 3390 |
| 6 | Um_nik | 3387 |
| 7 | tourist | 3384 |
| 8 | heuristica | 3322 |
| 9 | turmax | 3319 |
| 10 | jiangbowen | 3291 |
| # | User | Contrib. |
|---|---|---|
| 1 | Qingyu | 157 |
| 2 | nik_exists | 150 |
| 2 | maspy | 150 |
| 4 | AmShZ | 143 |
| 5 | Um_nik | 142 |
| 6 | Errichto | 139 |
| 7 | adamant | 137 |
| 8 | maroonrk | 133 |
| 9 | BledDest | 132 |
| 10 | qwexd | 129 |
|
-9
"I'm asking this in due to the fact that there are a lot of totally unnecessary downvotes from many users and wanted to know if it makes any difference to the user." |
|
0
I'm 14, and have been doing CP for abt a year... (Outside of codeforces). Currently, I can consistently solve A and B, and can mostly solve C on division 2 contests. I usually practice in the 1600-1800 range. I hope to be an expert (or higher) by the end of this year |
|
0
Why respond to 4 month old post? |
|
+27
There's a really useful tool called messing around with the numbers |
|
+20
I think you overcomplicated D2... It's literally D1, just a tiny bit different in calculating the number of cheap ones. |
|
0
Auto comment: topic has been updated by yesbutno1685 (previous revision, new revision, compare). |
|
0
Auto comment: topic has been updated by yesbutno1685 (previous revision, new revision, compare). |
|
0
Take every number mod 100 and then multiply them to get rid of any large numbers. This works because (A * B * C * D) % 100 is equal to the last two digits (Try it yourself if you don't believe me) and because A % 100 * B % 100 * C % 100 * D % 100 is equal to (A * B * C * D) % 100, from properties of modular arithmetic |
|
0
Auto comment: topic has been updated by yesbutno1685 (previous revision, new revision, compare). |
|
0
I see |
|
-6
Its relative... for some people, their goals might be to reach specialist and expert, and that might mean that it is high to them. |
|
+10
Guess what? I wrote a blog about the same exact topic and it got 50 downvotes, while this one got 3 upvotes... Goes to show that what New_Beginning is trying to say is actually valid. |
|
+3
Very cool! I can see this helping with debugging a lot (AKA coming up with random graphs to test) |
|
0
idk about all of you.... but I used two pointers and it somehow worked lol |
|
-18
How do you prove that for problem B in division 2 that you should check all common ratios from 1 to the n — 1th root of the largest value? |
|
0
Here's a pretty basic 2P question: https://codeforces.me/problemset/problem/279/B |
|
+5
why? |
|
+8
Bruh.. cararra is like the best...https://www.youtube.com/channel/UCwKg48gAQVZm6CShOXXgSjA |
|
0
Here are a couple of USACO problems: |
|
0
But some people's english inherently isn't that good... eg. it isn't their first language, etc etc.. |
|
+8
First at least post it so people can comment on it. It is currently just a revision |
|
-8
Bruh... I wrote the exact same post with pretty much the same meaing and it got -50 downvotes. |
|
0
However system tests are supposed to test the edge cases and make sure that your code is correct. Even if you are correct, at least your code is a little more correct and the results will be a little more accurate as you are singling out more people. |
|
0
But if you fail system testing, you aren't actually getting your code correct, and that definitely isn't good. Why are you even posting this? Are you salty about something? If so, don't be. If anything I should be salty with a 1197 rating.. (so close...) |
|
0
2^9 right? |
|
0
Can anyone explain why we check that A[i] & B[j] | A == A for problem C? |
|
0
Never mind, I found out my error UPD: Got it correct! (I just modified the behavior of my pointers in my 2 pointers code and it worked) |
|
0
lol |
|
-11
Ok. That's all I needed. I mean I just started doing CF... I have been doing USACO for a while though. |
|
0
In terms of algorithms, I would say you should know some graph algorithms such as (DFS, BFS, trees, func. graphs, etc...), knowledge of greedy algorithms, definitely searching and sorting techniques (Brute force, binary search for answer, binary search, recursive search, backtracking, etc...), maybe coordinate compression (never seen it so far), and data structure/implementation skills. This is not a complete list by far though. If you want some resources, I direct you to Darren Yao's Intro to USACO book (C++ version; JAVA version). I would also highly recommend this very useful guide to USACO and CF: https://usaco-guide.vercel.app/. In terms of problem solving skills, I think that is just down to practicing problems. If you want to improve your math skills, do some problems on the AoPS wiki (I promise that you will NEVER run out of problems there). If you want to get better at ad-hoc questions, do some ad-hoc questions. The only thing to keep in mind is to keep practicing and practice above or around your level. You don't want to be practicing too easy or always practicing problems on your level or you will never improve. On thing worth emphasizing that AoPS is like the godsend problem solving; It has a good community, where you can always ask for help, regardless of wether it is math related, CS related, or anything else. It also contains a huge database of problems, as I have already mentioned, that improve your problem solving by a lot. Even though AoPS is mainly math, doing math problems also fuels your brain, its kinda like the fuel your brain runs on. If you do enough math problems, you will also improve your general problem solving skills, which is of course imperative for doing good on CF problems. I hope you find this post useful. Good luck! |
|
0
How do you figure out these formulas, especially weird and obscure ones (in my opinion) in contest? Is there any hints as to what made you think that way and get it? |
|
On
malachi_toney_goat →
Codeforces Round #662 (Div 2) Problems A-D Unofficial Editorial, 6 years ago
0
I solved A by simply finding a pattern: 3 -> 2 4 -> 3 5 -> 3 6 -> 4 ... My approach for B was to keep a map and then have three lists: pairs of same numbers (pair), quadruplets of same numbers (quad), and a list of numbers with more than 7 occurrences (many). Then there are three cases to check, using just one element from the "many" list to make two squares right off the bat, using two elements from the "quad" list to make two squares, and finally using one element from the "pair" and one element from the "quad" list to make a rectangle and a square. One thing to keep track of was making sure that you don't use the same number more than it can be used, but you can just do some simple conditional checking to account for that. I did C by binary searching for the answer. Each time, I would do a validity check by maintaining a queue to keep track of the "unusable" ones. I would loop through each of the n spots and remove and add from the unusable accordingly and then always put the maximum occurrence number. Then, if the map ever turns empty, then return "not valid". IMPLEMENTATIONS [JAVA] (Might be a bit messy as I am not the best implementer) Problem A Problem B Problem C |
|
+1
IMO, I really enjoyed this contest... sad thing is that I figured out problem B and C after the contest... |
|
+8
I am pretty sure that if all the numbers are the same (i.e. aaaaa...), then it can have any length, odd or even. If the numbers are in alternating order (i.e. ababab...), then it HAS to be even. This is my submission -> https://codeforces.me/contest/1389/submission/88384839 If you want it. Test this string out: 1233330985 The optimal answer is to remove everything except for the EVEN amount of 3's |
|
0
In terms of an IDE, I run and debug my code on IntelliJ IDEA (Community Edition) because of the fact that it is free (just make sure not to use the "Ultimate Edition") and has a lot of useful features such as a good debugger where it kinda shows you the variable assignments without having to "look into them" and it just has a lot of "make-life-easier" tools. Some examples of those would include code simplification ideas, checking if a conditional will never be satisfied, finding infinite loops, and other things that are really annoying. To run my code, I don't use terminal because it is just easier in my opinion to use the console, with the expense of a little slower runtime. I mainly debug my doing print statements and if things get bad enough, I also resort to the built in debugger. However, I usually do not like to use the build in debugger because it isn't really good at finding "logical" errors compared to simply using a bunch of print statements. To test sample cases, I just copy-paste it into the console and run it on the IDE. |
| Name |
|---|


