BitsPlease-solutions
kactl
BitsPlease-solutions | kactl | |
---|---|---|
1 | 6 | |
3 | 2,906 | |
- | 1.2% | |
0.0 | 6.7 | |
over 4 years ago | 4 months ago | |
C++ | C++ | |
- | - |
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.
BitsPlease-solutions
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?
Wizium - Insanely fast crossword generator
cpstl - Copy and Paste standard library (CPSTL) is a repository with a collection of data structure and algorithms in many different languages
stegseek - :zap: Worlds fastest steghide cracker, chewing through millions of passwords per second :zap:
LeetCode-Solutions - ποΈ Python / Modern C++ Solutions of All 3540 LeetCode Problems (Weekly Update)
dwarven-outpost - A programming game, in which your goal is to help a group of dwarves establish a small outpost in the middle of a dangerous forest.
ac-library - AtCoder Library