Skip to content

A curated resource designed to provide KNIT Sultanpur students and the wider programming community with a structured pathway to mastering competitive coding.

License

Notifications You must be signed in to change notification settings

programming-club-knit/cp-handbook

Repository files navigation

📚 Competitive Programming Handbook

The Competitive Programming Handbook is a curated resource designed to provide KNIT Sultanpur students and the wider programming community with a structured pathway to mastering competitive coding. Covering essential topics from basic algorithms to complex problem-solving strategies, the handbook serves as both a learning guide and a reference tool.

The handbook includes:

  • Core algorithms and data structures explained in a simple and practical manner. 🧠
  • Problem-solving techniques drawn from real competitive programming contests. ⚡
  • Set of practice problems in each module to reinforce learning. 📝
  • Illustrative examples to enhance understanding. 🌟
  • A compilation of useful resources for further learning. 🔗

🤝 Contributing to this Handbook

We believe in the power of community and collaboration. If you’re passionate about competitive programming and want to contribute your knowledge to help others, we’d love for you to be part of this project! Whether it's suggesting new topics, contributing practice problems, or enhancing existing content, your contributions are welcome.

You can contribute by:

  • Proposing new modules or topics. 💡
  • Adding more practice problems and solutions. ✅
  • Improving or refining existing content. 🔨
  • Sharing useful resources that others might find helpful. 📚

💻⚙️ Development environment installation

You can set up the development environment in two ways:

  1. Using Docker (Recommended)
  2. Direct Installation (Manual)

Prerequisites

1. Using Docker (Recommended)

Follow these steps to set up and preview the project using Docker:

  1. Generate the Gemfile.lock file:

Use below command to create Gemfile.lock file as per your system's configuration:

  • For MacOs/Linux:
    docker run --rm -v "$PWD":/usr/src/app -w /usr/src/app ruby:latest bundle install
  • For Windows(Command Prompt):
     docker run --rm -v "%cd%":/usr/src/app -w /usr/src/app ruby:latest bundle install ⁠
  • For Windows(Powershell):
    docker run --rm -v "${PWD}:/usr/src/app" -w /usr/src/app ruby:latest bundle install
  1. Build Docker image:

    docker-compose build
  2. Start the local development server:

    docker-compose up

2. Direct Installation (Manual)

Follow these steps if you prefer to set up the project manually:

  1. Install dependencies using Bundler:

    bundle install --path vendor/bundle
  2. Start the local development server:

    bundle exec jekyll serve

Local Preview

  1. Start development server:

    • For Docker, run docker-compose up to start development server.
    • For Direct, run bundle exec jekyll serve to start the development server.
  2. Local Preview:

About

A curated resource designed to provide KNIT Sultanpur students and the wider programming community with a structured pathway to mastering competitive coding.

Resources

License

Stars

Watchers

Forks