Skip to content

This repository contains a variety of competitive programming problems with solutions aimed at improving algorithmic and problem-solving skills. Each problem comes with a clear explanation, efficient solutions in different languages.

License

MateusjsSilva/competitive-programming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Competitive Programming

Welcome to the Competitive Programming repository! This repository contains solutions to various competitive programming problems solved using different algorithms and data structures.

Purpose

The main goals of this repository are:

  • To store solutions for problems from competitive programming platforms like Beecrowd, Codeforces, HackerRank, LeetCode, and others.
  • To provide examples of how algorithms and data structures can be applied to solve real-world competitive programming problems.
  • To serve as a learning resource for anyone looking to enhance their problem-solving skills and knowledge of algorithms.

Repository Structure

The repository is organized into directories based on platforms or contests. Here's how it's structured:

  • Each platform or contest has its own folder.
  • Each problem is stored in its own folder, named after the problem's title or ID.
  • The problem folder contains:
    • The solution file(s) (e.g., .cpp, .java, .py, .cs).
    • A README or a comment within the code explaining the approach, the algorithm used, and any specific optimizations.

Problems in the Repository

Beecrowd (Java)

Beecrowd (C++)

How to Use

  1. Browse the Repository: Explore the directories to find solutions to various problems.
  2. Study the Code: Each solution is written with comments to explain key parts of the algorithm or approach.
  3. Understand the Approach: Most problems include a brief explanation of the strategy used to solve them, which can help in understanding the underlying concepts.
  4. Contribute: Feel free to contribute by submitting your own solutions or improving existing ones.

Topics Covered

Here are some of the common topics covered by the problems in this repository:

  • Sorting and Searching
  • Graph Algorithms (DFS, BFS, Dijkstra)
  • Dynamic Programming
  • Greedy Algorithms
  • Data Structures (Segment Trees, Fenwick Tree, Union-Find)
  • Mathematics and Number Theory
  • String Manipulation
  • Bit Manipulation

How to Contribute

Contributions are welcome! Here's how you can contribute to the repository:

  1. Fork the repository.
  2. Create a new branch for your changes.
  3. Add your code, along with comments and explanations.
  4. Submit a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

If you have any questions or suggestions, feel free to open an issue or submit a pull request!

About

This repository contains a variety of competitive programming problems with solutions aimed at improving algorithmic and problem-solving skills. Each problem comes with a clear explanation, efficient solutions in different languages.

Topics

Resources

License

Stars

Watchers

Forks