# CPP Competitive Programming Snippets

Sublime Snippets for improving the coding experience while doing competitive programming in C++.

## Details

## Installs

- Total 2K
- Win 1K
- OS X 222
- Linux 591

Dec 5 | Dec 4 | Dec 3 | Dec 2 | Dec 1 | Nov 30 | Nov 29 | Nov 28 | Nov 27 | Nov 26 | Nov 25 | Nov 24 | Nov 23 | Nov 22 | Nov 21 | Nov 20 | Nov 19 | Nov 18 | Nov 17 | Nov 16 | Nov 15 | Nov 14 | Nov 13 | Nov 12 | Nov 11 | Nov 10 | Nov 9 | Nov 8 | Nov 7 | Nov 6 | Nov 5 | Nov 4 | Nov 3 | Nov 2 | Nov 1 | Oct 31 | Oct 30 | Oct 29 | Oct 28 | Oct 27 | Oct 26 | Oct 25 | Oct 24 | Oct 23 | Oct 22 | Oct 21 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|

Windows | 3 | 4 | 2 | 2 | 0 | 4 | 1 | 0 | 1 | 2 | 1 | 0 | 0 | 1 | 0 | 4 | 3 | 0 | 1 | 2 | 0 | 2 | 1 | 2 | 3 | 3 | 1 | 4 | 1 | 1 | 0 | 1 | 1 | 0 | 3 | 0 | 3 | 2 | 0 | 1 | 4 | 3 | 2 | 1 | 2 | 2 |

OS X | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 |

Linux | 2 | 0 | 1 | 0 | 2 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 2 | 2 | 1 | 1 | 0 | 0 | 3 | 0 | 0 | 0 | 1 | 2 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 2 | 0 | 1 | 0 | 0 | 1 |

## Readme

- Source
- raw.githubusercontent.com

A collection of code snippets for competitive programmers, written in C++ for sublime editor.

Many times this happens in competitive programming competitions that you've figured out an algorithm for the solution of the problem, which happens to be a standard algorithm. How helpful would it be to have snippets for commonly used concepts/algorithms in competitive programming in that situation, to provide you an edge over fellow competitors as using snippets will improve your accuracy, speed and hence rank!

This repository provides extension for sublime-text editor which enables sublime users to use c++ coding snippets of algorithms while doing competitive programming.

## Installation

Install using Package Control : Sublime Package manager:

- Ctrl + Shift + P will open command palette
- Type and Select Package Control : Install Package
- Search for Competitive programming sublime snippets and hit enter

## Usage

Following table contains all the snippets available in this package. It gives information about the file containing the code of a particular snippet, prompt of the snippet, and when to use that particular snippet.

File Name |
Prompt |
When to use |
---|---|---|

codeChefStarter.cpp | codechef | Starting template for all the codechef problems |

codeJamStarter.cpp | codejam | Starting template for all the codejam problems |

codeChefStarterPython.py | codechef-py | Starting template for all the codechef problems in python |

time.cpp | time | To calculate time taken by a particular code to run |

basicGeometry.cpp | geometry-basic | In geometry problems, you'll need cartesian-points, distance between points and things like these. |

convexHull.cpp | convex-hull | To get vector of points belonging to hull in anti-clockwise order |

polygonArea.cpp | polygon-area | Find Area of a polygon whose points are given |

dfs.cpp | dfs | Depth First Search Algorithm |

dsu.cpp | dsu | Disjoint Set Union |

ewalk.cpp | ewalk | Euler Walk |

graphStarter.cpp | graph-starter | Starting template for all the graph problems |

minHeap.cpp | min-heap | min-heap using c++ stl |

maxHeap.cpp | max-heap | max-heap using c++ stl |

bigInt.cpp | bigint | BigInt in c++ |

binomialBigMod.cpp | binomial-big-mod | nCr % m:O(nlog(no. of digits in n)), n<m finds nCr for all 0<=r<=n in fact vector Modular Division - Euclid Extended theorem |

binomialSmallMod.cpp | binomial-small-mod | nCr % m:O(m^{2logn),} N is greater than m. (m is small) Lucas theorem |

2dSegmentTree.cpp | 2d-segment-tree | 2-D Segment Tree for Range Queries in 2-D |

simpleSegmentTree.cpp | segment-tree | Classic Segment Tree |

splitString.cpp | split-string | Split a c++ string by a delimiter |

suffixArray.cpp | suffix-array | Suffix array and LCP array |

binarySearch.cpp | binary-search | Binary Search |