ac-library
kactl
Our great sponsors
ac-library | kactl | |
---|---|---|
1 | 6 | |
1,667 | 2,505 | |
4.0% | 3.1% | |
0.0 | 6.1 | |
29 days ago | 5 days ago | |
C++ | C++ | |
Creative Commons Zero v1.0 Universal | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ac-library
kactl
-
Popcount walks: next, previous, toward and nearest
As a competitive programmer, Iβve seen similar βmagicβ tricks here: https://github.com/kth-competitive-programming/kactl/blob/ma... (page 23)
-
Learning Python was a good decision. Python may have its own shortcomings, but big integers aren't scary anymore ππ
Printed references (e.g. KACTL) are allowed.
-
Competitive Programming Is Useless
There's not _that_ many algorithms or data structures you see in competitive programming, and the vast majority of them aren't advanced. You do need to memorize a good portion of them, but doing so is the easy part towards becoming good at it.
You can read one moderate length book and know all of the DSes and algorithms you'll need for 99.9% of the time. cses.fi/book is a good one with a free version if you're curious.
https://github.com/kth-competitive-programming/kactl may also be of interest, it contains a good amount of the algorithms/DSes you'd ever need on a few printable pages (20ish).
- [graph theory] Simple algorithm to solve k-cliques problem on graphs
-
I want to design and build a programming language specifically for competitive programming!
Finally, there are certain types of algorithms/operations that can be very sensitive to implementation. For example, a "good" Fast Fourier Transform implementation may be 3-4 orders of magnitude faster than a naive recursive one (with the same complexity!). Another fun case is something like (a*b)%c when the numbers are 64 bit. Using a fast implementation like this one (https://github.com/kth-competitive-programming/kactl/blob/master/content/number-theory/ModMulLL.h#L20) can speed up your code by 3-4x compared to using a naive implementation.
What are some alternatives?
cpeditor - The IDE for competitive programming :tada: | Fetch, Code, Compile, Run, Check, Submit :rocket:
cpstl - Copy and Paste standard library (CPSTL) is a repository with a collection of data structure and algorithms in many different languages
algorithms - Algorithms & Data Structures & Computer Science studies
cc0-textures - Torrent downloads of free, CC0 licensed, PBR textures
cpalgorithms - Algorithms and Techniques for competitive programming
BitsPlease-solutions - Solutions For Problems uploaded in
code_problems - Code Problems from Coding Challenge Websites. The goal is to help them to improve their code skills and also studying for coding interviews.
LeetCode-Solutions - ποΈ Python / Modern C++ Solutions of All 3134 LeetCode Problems (Weekly Update)
expressPython - ππ expressPython - A small Python editor for learning and competitive programming.
Fork_CPP - This repository contain the C++ program from basic to advance. This repository will help you to prepare for the interview questions.
cp-algorithms - Algorithm and data structure articles for https://cp-algorithms.com (based on http://e-maxx.ru)
dice - Digital Image Correlation Engine (DICe): a stereo DIC application that runs on Mac, Windows, and Linux