https://github.com/shhossain/competitive_coding_master
https://github.com/shhossain/competitive_coding_master
Last synced: 7 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/shhossain/competitive_coding_master
- Owner: shhossain
- Created: 2023-10-16T14:38:04.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-10-16T15:03:06.000Z (almost 2 years ago)
- Last Synced: 2025-01-26T05:24:46.153Z (9 months ago)
- Size: 4.88 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Becoming a Codeforces Master in 1 Year
## First Month (Target: 1400) - Specialist
- **Days 1-15:** Take 6-10 problems each day within your current rating range and solve them. Don't spend more than 30 minutes on one problem. If you can't solve it, look at the solution and move on.
- **Days 16-30:** Continue taking 6-10 problems per day as before. This time, try to solve them within 3 hours each. If a solution takes longer, move on to the next problem. At this stage, advanced knowledge of algorithms and data structures is not necessary. Focus on learning from other people's solutions.
## Next 3 Months (Target: 1600) - Expert
- **Learning Phase:**
- Study key topics, including notations, binary search, ternary search, basics of dynamic programming, and an introduction to graph theory (binary tree, minimum spanning tree, Dijkstra's algorithms, BFS, DFS), and an introduction to number theory.- **Problem Solving on InterviewBit:**
- Go to the website InterviewBit and work through all the problems up to level 7. This phase may take approximately 2 months to complete.- **Practice Phase:**
- Sort problems within the 1400-1600 rating range.
- Solve 5 questions every day for the next 15 days, with a maximum time limit of 1 hour per problem. After attempting, review the solutions.- **Advanced Problem Solving:**
- Select 5 questions that are slightly more challenging, ranging from 1500 to problems touching 1600.
- Create a virtual contest with these problems and aim to solve them within 3 hours. Afterward, review the solutions if you couldn't solve them during the contest.- **Competitions on Codeforces:**
- With a solid foundation in place, you can start participating in contests on platforms like Codeforces.## Next 6 Months (Target: 1900) - Candidate Master
- **In-Depth Topic Study:**
- Focus on specific topics such as DSU (Disjoint Set Union), DP on trees, complex dynamic programming problems, pattern matching, DFS (Depth-First Search), BFS (Breadth-First Search), DP with DFS, segmented trees, and divide and conquer.- **Solve Quality Questions:**
- Solve 40-50 high-quality questions for each of these topics. This may be time-consuming but is essential for mastery.- **Efficient Problem Solving:**
- Allocate 30 minutes to solve a problem. If you can't solve it within this timeframe, consult the hint in the editorial (which essentially provides the solution).
- If the hint doesn't lead to a solution, take another 15 minutes to delve into the first paragraph of the editorial.
- Continue this process, investing additional 15-minute blocks into subsequent sections of the editorial.
- If you're still unable to solve the problem, consider reviewing the implementations of other coders and attempt to implement it on your own.- **Codeforces Contests:**
- Continue participating in Codeforces contests to apply your knowledge in real-time competitive scenarios.This comprehensive one-year plan will guide you from a specialist to a candidate master in competitive coding. Diligently work through these steps, and your skills will undoubtedly improve. Best of luck!
# **What You Will Learn:**
## First Month (Target: 1400) - Specialist
- **Days 1-15:** By consistently solving 6-10 problems daily within your rating range, you'll build a strong problem-solving foundation. You'll also develop a habit of not giving up easily and learn to seek solutions.
- **Days 16-30:** During this phase, you'll enhance your problem-solving speed. Attempting problems within 3 hours will improve your ability to think quickly and efficiently. You'll also become more comfortable with reviewing others' solutions, which is a valuable learning experience.
## Next 3 Months (Target: 1600) - Expert
- **Learning Phase:** This phase will provide you with essential knowledge in various domains like algorithms, data structures, and key problem-solving concepts. You'll start thinking more analytically and mathematically.
- **Problem Solving on InterviewBit:** Solving problems on InterviewBit will deepen your understanding of the topics you've learned. You'll be able to apply your newfound knowledge effectively.
- **Practice Phase:** During this phase, you'll become more consistent and efficient. You'll also learn how to manage your time effectively, which is crucial in competitive coding.
- **Advanced Problem Solving:** Challenging problems will test your limits and creativity. You'll learn to think outside the box and apply your knowledge to more complex problems.
- **Competitions on Codeforces:** You'll put your skills to the test in real-time competitive coding contests. This phase will teach you to handle the pressure of timed contests, improve your accuracy, and expose you to different problem-solving approaches.
Each phase of this journey will provide valuable lessons and opportunities for improvement. Stay motivated by setting clear goals, tracking your progress, and celebrating your achievements along the way. The satisfaction of continuous learning and skill development will keep you engaged throughout the year.