Signed-off-by: erick-alcachofa <erick@artichoke.dev>
Project Euler Solutions in C++
This repository contains my personal solutions in C++ to problems from: Project Euler, written using modern C++23 and built with CMake.
Each problem is organized into three parts:
- A core implementation file (
impl.hpp) - A runner file that builds an executable, measures the time it takes to run the solution and prints the answer.
- A test file to verify correctness using sample inputs or test cases.
Build Instructions
Requirements
- C++23-compatible compiler (e.g., GCC 13+, Clang 16+, MSVC with C++23 support)
- CMake 3.20 or higher
- A working build system (Make, Ninja, etc.)
Build with CMake
mkdir -p build
cd build
cmake ..
cmake --build .
Run a Problem
After building, executables will be available in the bin/ directory of each
problem subfolder:
./problem-1/bin/solution
Run Tests (Optional)
Test files also compile into separate test executables under the same bin/
directory of each problem subfolder:
./problem-1/bin/test
Philosophy
This project is focused on:
- Using modern C++23 code
- Separating computation from I/O and tests
- Practicing problem solving, performance, and readability
All solution files are licensed under AGPLv3 and are intended for educational purpose and personal use.
License
This project is licensed under the GNU Affero General Public License v3.0 (AGPLv3).
See the LICENSE file for full terms.
You may use, modify, and distribute this work under the terms of the AGPLv3. If you distribute modified versions, you must also make the source code available.
About Project Euler
Project Euler is a series of challenging mathematical/computer programming problems that require creative problem-solving and efficient algorithm design.
Official site: https://projecteuler.net