Web platform to practice problem solving, algorithms and data structures.
The main focus of this platform is to force participants to use best practices while solving programming problems/challenges to get the most outcome from their training.
Many competitive programmers follow wrong ways/happites while solving problems and the most two common things are:
- NOT taking enough time checking/testing correctness of their solutions and submit their solution once they got a working idea from the first glance.
- NOT focusing on a problems set but instead distracting themselves by looking regularly on the standings and what others are doing, and this my lead to some frustration during a contest.
- Limiting number of submissions per problem in a contest (max 2) to let participants think more about correctness of a solution before submit, otherwise submission for tried problem will be closed and getting penalty.
- Standings are published after the end of a contest to just compete against a problems set and focus on them only.
NOTE: This project is currently in progress and planning to be published to the world soon...
- Login
- Register
- User profile
- Problems
- Contests
- Standings
- Solution tutorial (in progress...)
- Problem creation:
- Problem name.
- Main Description (story) section.
- Input description section.
- Output description section.
- Additional notes section.
- Upload sample/test cases files (currently just one sample and one test files are supported).
- Choosing file comparing checker type.
- Line Checker.
- Token Sequence Checker.
- ... planning to allow for customized checkers.
- Contest creation:
- Contest name.
- Adding created problems to contest.
- Start date.
- Duration in minutes.
- Contest privaciy (public or private). NOTE: private is not supported currently but it's in the plan.
- Show all upcoming/running/archieved contests.
- Register in a contest.
- Submit a problem.
- Show standings after a contest ends immediatly.
- Show problems solution tutorial after a contest ends immediatly.
- Currently it's just output files comparing.
- Could make it submit source code in the future.
- Submission steps:
- Download input file.
- Upload output file.
- Recieving judgement verdict.
- Ranking criteria is based on the ICPC style.
- Java
- Spring (MVC, Data JPA, Security)
- MySQL
- Hibernate
- Thymeleaf
- Bootstrap
- JavaScript
- JQuery
- MathJax
- IntelliJ IDEA