# ACM-ICPC-Algorithms **Repository Path**: majeriot/ACM-ICPC-Algorithms ## Basic Information - **Project Name**: ACM-ICPC-Algorithms - **Description**: Algorithms used in Competitive Programming - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-10-20 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ACM-ICPC Algorithms ### Introduction to ACM-ICPC ACM International Collegiate Programming Contest (abbreviated as ACM-ICPC or ICPC) is an annual multi-tiered competitive programming competition among the universities of the world. Alternately, we can say that the [International Collegiate Programming Contest](https://en.wikipedia.org/wiki/ACM_International_Collegiate_Programming_Contest) is an algorithmic programming contest for college students. - Teams of three, representing their university, work to solve real-world problems, fostering collaboration, creativity, innovation, and the ability to perform under pressure. - Through training and competition, teams challenge each other to raise the bar on what could be done. - Quite simply, it is the oldest, largest, and most prestigious programming contest in the world. ### Purpose of ACM-ICPC Algorithms ACM-ICPC Algorithms is a collection of important algorithms and data structures used to solve questions in this worldwide olympiad. It aims to provide solutions in various languages as per [ICPC 2018 WF](https://icpc.baylor.edu/worldfinals/programming-environment), including: - C - C++ - Java - Python (2 & 3) - Kotlin ##### For more information, visit: **Official Website of [ICPC](https://icpc.baylor.edu/)** #### If you wish to contribute, please refer to [the contributor guidelines](https://github.com/matthewsamuel95/ACM-ICPC-Algorithms/blob/master/CONTRIBUTING.md). **Table of Contents :** * [Breadth First Search](/BFS) * [Branch And Bound](/Branch%20and%20Bound) * [0/1 Knapsack](/Branch%20and%20Bound/0_1%20Knapsack) * [Binary Search Tree](/BST) * [Backtracking](/BackTracking) * [Hamilton Path](/BackTracking/Hamilton%20Path) * [Knights Tour](/BackTracking/KnightsTour) * [NQueens](/BackTracking/NQueens) * [Rat In A Maze](/BackTracking/RatInAMaze) * [Sudoku Algorithm](/BackTracking/SudokuAlgorithm) * [Depth First Search](/DFS) * [Bit Manipulation](/BitManipulation) * [Checking Power of 2](/BitManipulation/Checking_power_of_2) * [Nth Magic No](/BitManipulation/Nth_magic_number) * [Set kth Bit](/BitManipulation/Set_kth_bit) * [Sparse Number](/BitManipulation/Sparse_number) * [Count Ones](/BitManipulation/count_ones) * [Divide Integers](/BitManipulation/divide_integers) * [Even Odd](/BitManipulation/even_odd) * [Print Subsets](/BitManipulation/print_subsets) * [Reverse Bits](/BitManipulation/reverse_bits) * [Single Number](/BitManipulation/single_number) * [Swap Bits](/BitManipulation/swap_bits) * [Data Structures](/Data%20Structures) * [Disjoint Set](/Data%20Structures/disjointset) * [Doubly Linked List](/Data%20Structures/DoublyLinkedList) * [Fenwick Tree](/Data%20Structures/Fenwick_tree) * [LCA](/Data%20Structures/LCA) * [Linked List](/Data%20Structures/Linked%20List) * [Queue](/Data%20Structures/Queue) * [Queue From Stack Or Stack From Queue](/Data%20Structures/QueueFromStack_StackFromQueue) * [Red Black Tree](/Data%20Structures/Red%20Black%20Tree) * [Singly Linked List](/Data%20Structures/SinglyLinkedList) * [Stack](/Data%20Structures/Stack) * [Segment Tree](/Data%20Structures/Segment%20Tree) * [Treap](/Data%20Structures/Treap) * [Trie](/Data%20Structures/Trie) * [Dynamic Programming](/DP) * [Coin Change](/DP/Coin%20Change%20Problem) * [Collect Maximum Points](/DP/Collect_Max_Points) * [Edit Distance](/DP/EditDistance) * [Egg Dropping Puzzle](/DP/Egg%20Dropping%20Puzzle) * [Fibonacci Series](/DP/Fibonacci) * [Floyd Warshall Algorithm](/DP/Floyd%20Warshall%20Algorithm) * [Game Of Sum](/DP/game_of_sum) * [Knapsack](/DP/Knapsack) * [Longest Palindrome Substring](/DP/Longest%20Palindrome%20Substring) * [Longest Common Increasing Subsequence](/DP/LCIS) * [Longest Common Subsequence](/DP/LongestCommonSubsequence) * [Longest Increasing Subsequence](/DP/LongestIncreasingSubsequence) * [Longest Repeated Subsequence](/DP/Longest%20Repeated%20Subsequence) * [Matrix Chain Multiplication](/DP/MatrixChain_multiplication) * [Max Sum Increasing Subsequence](/DP/Maximum%20Sum%20Increasing%20Subsequence) * [Minimum Path Sum](/DP/MinimumPathSum) * [Number Of Islands](/DP/NumberOfIslands) * [Partition Problem](/DP/PartitionProblem) * [Print Neatly](/DP/PrintNeatly) * [Recursive Staircase Problem](/DP/Recursive_Staircase_Problem) * [Shortest Uncommon Subsequence](/DP/ShortestUncommonSubsequence) * [Subset Sum](/DP/subset%20sum%20problem) * [Longest Bitonic SubSequence](/DP/LongestBitonicSubseq) * [Tiling Problem](/DP/Tiling%20Problem) * [Graph Algorithms](/Graph) * [Articulation Points](/Graph/Articulation_points) * [Bellman Ford SSSP](/Graph/BellmanFordSSSP) * [Bridges](/Graph/bridges) * [Centroid Decomposition](/Graph/Centroid%20Decomposition) * [Detect Cycle](/Graph/Detect_Cycle) * [Dials Algorithm](/Graph/DialsAlgorithm) * [Dijkstras SPT](/Graph/DijkstrasSPT) * [Euler Path](/Graph/EulerPath) * [Floyd Warshall](/Graph/FloydWarshall) * [Graph Coloring](/Graph/Graph_m_Coloring) * [Johnson's Algorithm](/Graph/Johnson'sAlgorithm) * [Kruskal MST](/Graph/KruskalsMST) * [Prims MST](/Graph/PrimsMST) * [Sack](/Graph/Sack) * [SPFA SSSP](/Graph/SPFA%20SSSP) * [Targan SCC](/Graph/TarganSCC) * [Topo Sort](/Graph/TopoSort) * [Fenwick Tree](/Graph/FenwickTree) * [Weighted Quick Union](/Graph/Weighted_Quick_Union) * [Greedy Algorithms](/Greedy) * [Activity Selection](/Greedy/ActivitySelection) * [Containership](/Greedy/ContainerShip) * [Equalizing Bit Strings](/Greedy/EqualizingBitStrings) * [Gas Station](/Greedy/Gas%20Station) * [Greedy Graph Coloring](/Greedy/Greedy_Graph_Coloring) * [Huffman Coding](/Greedy/Huffman%20coding) * [Knapsack](/Greedy/Knapsack) * [Kruskal's Minimum Spanning Tree](/Greedy/Kruskal’sMinimumSpanningTree) * [Maximum Increasing Subarray](/Greedy/MaximumIncreasingSubarray) * [Minimum Coins](/Greedy/MinimumCoins) * [Odd Sum Subsequence](/Greedy/OddSumSubsequence) * [Hashing Algorithms](/Hashing) * [2 Sum](/Hashing/2_Sum) * [3 Sum](/Hashing/3_Sum) * [4 Sum](/Hashing/4_Sum) * [Machine Learning](/MachineLearning) * [Perceptron](/MachineLearning/Perceptron) * [Mathematical Algorithms](/Math) * [3 Sum square complexity](/Math/3_Sum_square_complexity) * [Factors Of A Given Number](/Math/All%20factors%20of%20a%20given%20Number) * [Collatz Conjecture](/Math/collatz_conjecture) * [Combinations](/Math/Combinations) * [Bézout's Coefficients](/Math/Bézout's%20Coefficients) * [Convex Hull](/Math/convexhull) * [Euler's Totient Function](/Math/eulers_totient_function) * [Factorization](/Math/Factorization) * [Factors](/Math/factors) * [Fast Exponentiation with Mod](/Math/Fast%20Exponentiation%20with%20Mod) * [Floor Square Root](/Math/floor_sqrt) * [Greatest Common Divisor](/Math/gcd) * [Histogram Area](/Math/histogram_area) * [Largest Number Divisible By Three](/Math/largest_number_divisible_by_three) * [Last Digit Exp](/Math/last_digit_exp) * [Logarithm](/Math/log) * [Lowest Common Multiple](/Math/lowest_common_multiple) * [Matrix Power](/Math/Matrix_Power) * [Max Divisible Number](/Math/max_divisible_num) * [Max Sub Rectangle](/Math/max_sub_rectangle) * [Max Sub Square](/Math/Max_Sub_Square) * [Miller Rabin Primality Test](/Math/miller_rabin_primality_test) * [Modular Multiplication Inverse](/Math/modular_multiplicative_inverse) * [Next Power of 2](/Math/NextPow2) * [Nth Root](/Math/nthRoot) * [Pascal Row](/Math/pascal_row) * [Power](/Math/Power) * [Prime](/Math/Prime) * [Randomized Algorithms](/Math/Randomized%20algorithms) * [Set](/Math/Set) * [Sieve Of Eratosthenes](/Math/sieve_of_eratosthenes) * [Square Root](/Math/squareroot) * [Subset Sum](/Math/subset_sum) * [Sum Of Digits](/Math/sum_of_digits) * [Tower Of Hanoi](/Math/TowerofHanoi) * [Truncated Square Root](/Math/truncated_square_root) * [Calculate And Print All Permutations](/Math/AllPermutations) * [Calculate the result of binom(n,p)](/Math/binomial_coefficients) * [Network Flow](/NetworkFlow) * [Dinic](/NetworkFlow/Dinic) * [Edmund Karp](/NetworkFlow/EdmundKarp) * [Ford Fulkerson](/NetworkFlow/FordFulkerson) * [Goldberg Tarjan](/NetworkFlow/GoldbergTarjan) * [Search Algorithms](/Search) * [Binary Search](/Search/BinarySearch) * [Fibonacci Search](/Search/FibonacciSearch) * [Hashing](/Search/hashing) * [Jump Search](/Search/JumpSearch) * [Linear Search](/Search/LinearSearch) * [Ternary Search](/Search/TernarySearch) * [Interpolation Search](/Search/InterpolationSearch) * [Exponential Search](/Search/ExponentialSearch) * [Sorting Algorithms](/Sorting) * [BogoSort](/Sorting/BogoSort) * [Strand sort](/Sorting/strandsort) * [Bubble Sort](/Sorting/Bubble%20Sort) * [Bucket Sort](/Sorting/Bucket%20Sort) * [Cocktail Shaker Sort](/Sorting/Cocktail%20Shaker%20Sort) * [Comb Sort](/Sorting/Comb%20Sort) * [Counting Sort](/Sorting/Counting%20Sort) * [HeapSort](/Sorting/HeapSort) * [Index Sort](/Sorting/Index%20Sort) * [Insertion Sort](/Sorting/Insertion%20Sort) * [Merge Sort](/Sorting/Merge%20Sort) * [Pancake Sorting](/Sorting/Pancake%20Sorting) * [Patience Sorting](/Sorting/Patience%20Sorting) * [QuickSort](/Sorting/QuickSort) * [Radix Sort](/Sorting/Radix%20Sort) * [Selection Sort](/Sorting/Selection%20Sort) * [ShellSort](/Sorting/ShellSort) * [TimSort](/Sorting/TimSort) * [Topological Sorting](/Sorting/Topological%20Sorting) * [String Algorithms](/String) * [Anagram](/String/Anagram) * [Balanced Parenthesis](/String/Balanced%20Parentheses) * [Hamming Distance](/String/Hamming%20distance) * [KMP](/String/KMP) * [Palindrome](/String/Palindrome) * [String Automaton](/String/String%20Automaton) * [String Matching](/String/String%20Matching) * [Substring](/String/Substring) * [Top K Frequent Words](/String/Top_K_Frequent_Words) * [Top K Frequent Words In Java](/String/top_k_frequent_words_in_java) * [Uncompressing Strings](/String/Uncompressing_Strings) * [Parsing Arithmetic](/String/ParsingArithmetic) * [Geometry 2D](/Geometry%202D) * [Lines Intersection](/Geometry%202D/Lines%20Intersection)