Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
C

competitive-programming

> 开发工具
Open source

A one-stop Destination✏️ for all your Competitive Programming Resources. Refer CONTRIBUTING.md for contributions

702 stars0 likes0 views
WebsiteGitHub

About

A one-stop Destination✏️ for all your Competitive Programming Resources. Refer CONTRIBUTING.md for contributions

Competitive Programming :high_brightness::high_brightness:

Hello Programmers, A one-stop destination for all your Competitive Programming Resources.

:pushpin::pushpin: What is Competitive Programming? :pushpin::pushpin:

According to me, competitive programming is a sport. A sport based on problem-solving skills, thinking ability, speed testing, regularity and to be precise. Competitive Programming will help you build logic and implement that logic to find solutions to a real-world problem. Brainstorming upon your code will increase your coding skills as well as it will help to expand your thinking capacity. Thus practicing Competitive Programming on day to day basis helps you in mastering that particular language. And believe us, if you are playing this sport regularly, you are already prepared for the technical rounds of the Interviews. So now let's dive into the ocean of Competitive Programming.

Platform to practice Competitive Programming :telescope::telescope:

  • HackerRank (Must do for a Beginner)

  • CodeChef

  • CodeForces

  • HackerEarth

  • Project Euler(For Mathematics)

  • GeeksForGeeks

  • LeetCode (For Data-Structures and Algos)

  • AtCoder

  • interviewBit

  • Sphere Online Judge(SPOJ)

  • TopCoder

  • Leetcode (for monthly challenges)

  • CSES

  • binarysearch

  • Coderbyte

BENEFITS OF COMPETITIVE PROGRAMMING

The skills needed for competitive programming have long-lasting benefits to your career as a developer. There are numerous benefits to participating in competitive programming, including:

Getting hired: Participating in competitive programming can make you a desirable candidate for companies. When you participate in large competitions like the ACM International Collegiate Programming Contest, you have a good chance of being on the radar of companies like Apple, Facebook, IBM, Google, and more. Tech companies track competitions and events to find potential employees. Large competitive programming events are extremely prestigious and difficult to succeed in, so if you do well, that is an indicator of your technical talent and abilities. That’s why many companies have sponsored programming competitions.

Teamwork skills: When you participate in these competitions, you will often work in teams, meaning that you learn how to interact with teammates during high-pressure moments. This is an incredibly important skill. When you are working as a software engineer, you will almost always work with other individuals, meaning that companies care a lot about your communication and team skills. Also, most teams will have a leader. If you are the leader of the team, this demonstrates management skills, making you even more of a desirable candidate. Companies want to know that you can work effectively and comfortably with your teammates.

Interview prep: When you are trying to get an engineering job, companies will test you for your knowledge of data structures and algorithms. When you participate in competitive programming, you work to develop an advanced understanding of these concepts. Furthermore, the environment for the coding interview and competitive programming is quite similar. They are both high-pressure environments, in which you have to engage in problem-solving. While many others may not be able to adjust to this environment, your competition experience gives you an advantage.

Most Famous Programming Contests :crown: :crown:

Upcomming contests schedule - https://clist.by/

  • Google KickStart
  • ACM ICPC (Olympics of Programming)
  • Google CodeJam
  • FaceBook Hacker Cup
  • TCS CodeVita
  • Google HashCode
  • CodeChef's SnackDown
  • Coding Block's CodeSule
  • Codechef Long Challenge
  • Codechef Cook-Off
  • Codechef Lunchtime
  • Codeforces Rounds Div1 & Div2 & Div3 & Educational Codeforces Round

Books :high_brightness::high_brightness:

  • Competitive Programming 3
  • Data Structures and Algorithms Made Easy - by Narasimha Karumanchi
  • Cracking the Coding Interview - by Gayle Laakmann McDowell
  • CP Handbook By Antti Laaksonen
  • USACO Guide by the Competitive Programming Initiative
  • Competitive Programmer's Handbook - by Antti Laaksonen

Algorithms :high_brightness::high_brightness:

  • CP Algorithms
  • Visual Alogorithms

Code Visualisation :high_brightness::high_brightness:

  • C++ Code Visualisation
  • JAVA Code Visualisation
  • PYTHON Code Visualisation
  • VisuAlgo - visualising data structures and algorithms through animation

Learning Resources (Topic Wise) :checkered_flag::checkered_flag::checkered_flag:

Big O Notations

  • CS Dojo - Introduction to Big O Notation and Time Complexity
  • Simple Snippets - Asymptotic Analysis of Algorithms with Example
  • Big-O CheatSheet https://www.bigocheatsheet.com/

STL in C++

  • Codealittle - Video

  • Takeyouforward - Video

  • CppNuts - Video

  • STL SUMMARY Blog post

  • Vectors (Dynamic Arrays)

  • Sets

    • Set
    • Unordered Set
    • Multiset
  • Queue

  • Stack

  • Map

    • Map
    • Unordered Map
    • Multimap
  • Pairs

  • Priority Queue (Min - Max Heaps)

  • Deque


Binary Search

  • Aditya Verma Video

Problems

  • Allocate Minimum No of pages(GFG)
  • Aggressive Cows(SPOJ)
  • Prata(SPOJ)
  • Painters Partion(GFG)
  • EKO(SPOJ)
  • Square Root using BS (GFG)
  • Floor And Ceil in a Sorted Array(GFG)
  • First And Last occurrence of an element(GFG)
  • Count of element in a sorted array(GFG)
  • Search in a rotated Sorted Array(leetcode)
  • Logs(Atcoder)
  • Search in A 2D Matrix (Leetcode)
  • First bad version(Leetcode)
  • Heaters(Leetcode)

Number Theory (Mathematics)

  • CodeNCode - Video

Recursion and BackTracking

  • Aditya Verma - Video
  • Codealittle - Video

Bit Manipulations

  • Codealittle - Video
  • codencode - Video

Graph Theory

  • CodeNcode - Video
  • Hitesh Tripathi - Video

Dynamic Programing

  • Tushar Roy - Video
  • GeeksforGeeks - Video
  • Aditya Verma - Video
  • TakeYouForward - Video

Coding Platforms

  • Beginners - Practice @ Codecademy
  • Beginners - Practice @ GeeksForGeeks
  • Beginners - HackerRank (Must do for a Beginner)
  • Beginners - HackerEarth
  • Long Challenge and Short Contest - CodeChef
  • Short Contest - CodeForces
  • Mathematics - Project Euler
  • Data Structures and Algorithms - LeetCode (For Data-Structures and Algos)

Important Data Structures:

  • Vectors (Dynamic Arrays)

  • Strings

  • Linked List

  • Stack

  • Queue

    • Queue
    • Priority Queue
    • Deque
  • Sets

    • Set
    • Unordered Set
    • Multiset
  • Map

    • Map
    • Unordered Map
    • Multimap
  • Hash Tables

  • Disjoint-Set Data Structures

  • Trie

  • Segment Tree

  • [Policy based Data Structu

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

C++algorithmsawesomeawesome-competitive-programmingbeginner-code

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category开发工具
PricingOpen source

> Related tools

V
VS Code
流行的开源代码编辑器
G
Git
分布式版本控制系统
V
Vite
下一代前端构建工具