Skip to content

Commit 23e9d08

Browse files
docs: shorten readme (#135)
1 parent 392aff9 commit 23e9d08

1 file changed

Lines changed: 2 additions & 72 deletions

File tree

README.md

Lines changed: 2 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,6 @@
22
<p align="center">
33
C++ Competitive Programming Library
44
</h1>
5-
<p align="center">
6-
<a href="#about">About</a> •
7-
<a href="#getting-started">Getting Started</a> •
8-
<a href="#milestones">Milestones</a>
9-
</p>
105
</p>
116

127
## About
@@ -32,73 +27,8 @@ From there you can:
3227
3. Test against the provided test cases in `test/` for your own algorithm development.
3328

3429
> [!NOTE]
35-
> Additional instructions and support for importing the library and using the test cases is
36-
> planned to be added in the future.
37-
38-
## Milestones
39-
40-
As with every single one of my projects, this is still very much a work in progress. The following is a list
41-
of goals I have for this project before I consider it to be complete, in no particular order:
42-
43-
| # | Goal | Status |
44-
| :-: | --------------------------------------------------------- | :----: |
45-
| 1 | Refactor old code to match current standards | ⚠️ |
46-
| 2 | Full test coverage | ⚠️ |
47-
| 3 | Performance with supporting benchmarks | ⚠️ |
48-
| 4 | Codebase Atomizer ||
49-
| 5 | Full implementation of the CPH | ❌️ |
50-
51-
A more detailed description of each goal can be found below:
52-
53-
### Refactor Old Code to Match Current Standards
54-
55-
This is my longest standing project in terms of the initial creation date. As such, the earlier code does
56-
not reflect my current standards. One of the current goals is to revise such code to improve quality.
57-
58-
> [!NOTE]
59-
> I find the structure of the code in this repository to be quite volatile. I have probably re-written some
60-
> of the algorithms 10+ times as this library tends to evolve as I become a better programmer.
61-
> If something doesn't look quite right, it probably isn't.
62-
63-
### Full Test Coverage
64-
65-
While this library is meant for competitive programming (where tests don’t carry over), it should still have
66-
full test coverage — including tests derived from problems where I used components of this library to solve them.
67-
68-
### Performance with Supporting Benchmarks
69-
70-
In the spirit of competitive programming, while solving the problem is the main goal, performance is also
71-
a key component. Benchmarks should back up various design decisions when it comes to how I have chosen to
72-
structure and implement various key algorithms and data structures.
73-
74-
> [!NOTE]
75-
> While I do want 100% test coverage, I'm less concerned about benchmarks. Benchmarks will be added
76-
> as I find them necessary to support design decisions.
77-
78-
### Codebase Atomizer
79-
80-
The *Atomizer* is a tool used to break down the codebase into smaller, more manageable pieces, that can be
81-
retrieved quickly. For example, if you want to use a specific function, say `output_container` to keep things
82-
simple. You can use the *Atomizer* output to retrieve that specific function via a file lookup, `output_container.cpp`.
83-
You can also use any supporting tool you want to paste that file buffer directly inline into your code. Rather than
84-
opening the container header file and copying the specific lines from the file that you need. This will also work
85-
with more complex algorithms that may require an additional data structure to function. For example, if you want to
86-
use Kruskal's algorithm, you can use the *Atomizer* to retrieve the `kruskal.cpp` file which will include the
87-
supporting `DisjointSet` class used within the algorithm. Again saving you from finding the specific lines of code
88-
within the header file that you need.
89-
90-
### Full Implementation of the CPH (Competitive Programming Handbook)
91-
92-
The [*Competitive Programming Handbook*](https://cses.fi/book/book.pdf) by Antti Laaksonen is an awesome, all in one,
93-
resource for everything competitive programming. It contains everything from compiling and reading input to sweep line
94-
algorithms including convex hulls. Its an eventual goal of mine to fully implement all the algorithms outlined
95-
in the book. This has the added benefit of an *complete* documentation source of all the algorithms in this
96-
library. This is a long term goal and will likely take a while to complete.
97-
98-
> [!NOTE]
99-
> This is my endgame for this project. When its completed I will consider this project *done* as so far
100-
> as it will no longer be a major work in progress for me personally. I will still add things here and there
101-
> and work on it when I'm compelled to do so but the core goals of this project will be officially complete.
30+
> As of late, this project has shifted focus toward library design over contest utility.
31+
> The copy-paste guarantee may no longer apply and various sections will have internal dependencies.
10232
10333
## License
10434

0 commit comments

Comments
 (0)