A simple terminal-based coding contest platform with a graphical interface. Practice coding problems and get instant feedback through automated testing.
Install YAD (the dialog tool) and a C/C++ compiler:
sudo apt install yad build-essentialStart the app:
bash mainmenu.shSolve a problem:
- Click on a problem (A, B, or C)
- Read the problem statement
- Click "submit-code"
- Choose C or C++
- Paste your solution
- Hit OK and watch it test automatically
If all test cases pass, you'll see "Accepted" in your status!
├── mainmenu.sh # Start here
├── probA.sh, probB.sh, probC.sh # Problem interfaces
├── solA.sh, solB.sh, solC.sh # Testing scripts
├── sol1/, sol2/, sol3/ # Test cases for each problem
│ ├── probX.txt # Problem statement
│ ├── inputs/ # Test inputs (5 files)
│ └── answers/ # Expected outputs (5 files)
└── README.md
Your code gets compiled and tested against 5 test cases automatically. If your output matches the expected answer for all cases, the problem is marked as solved.
- Create a
sol4/directory - Add
inputs/andanswers/subdirectories - Create 5 test cases (
input1.txt-input5.txtandans1.txt-ans5.txt) - Copy
probA.shandsolA.sh, rename toprobD.shandsolD.sh - Update paths in the new scripts
- Add a button in
mainmenu.sh
App won't start? Make sure YAD is installed: sudo apt install yad
Compilation errors? Double-check your code syntax and make sure gcc/g++ is installed.
Tests failing? Your program should read from stdin and write to stdout. Check the expected outputs in the answers/ folder.
Built for practice and learning. Feel free to customize and add your own problems!