AtCoder (https://atcoder.jp) is a programming contest site for anyone from beginners to experts. They hold weekly programming contests online.
This is a collection of my implementation of those problems in the C language. The reason I went with C is that:
1. It's a small language
2. I want to implement most of the things myself that others take for granted with STL in C++ for example
3. I feel superior over others who rely on already built in libraries and don't know how to implement things from scratch
4. I'm preparing for low level roles (firmware, embedded linux), in such constrained systems you don't have such libraries, you often have to implement data structures or algorithms yourself
NOTE: Some coding practices followed here is often discouraged in the C community, such as scanf for reading a string; it can cause a buffer overflow, potentially crashing the program or creating security vulnerabilities. My core focus is implementing algorithms & data structures.
I prefer C99 standard. Also I will only use stdio.h header file for I/O, all other things are implemented from scratch.