DestructHub/bcs-contest

Framework proposal

lubien opened this issue · 4 comments

Proposal

Automate and organize problem solving routines within this repo.

Progress

  • Basic Folder Structure
  • Add test cases
  • CI
  • Add 2015 contest
  • Add 2014 contest
  • Add 2013 contest
  • Add 2012 contest
  • Add 2011 contest
  • Add 2010 contest
  • Add 2009 contest
  • Add 2008 contest
  • Add 2007 contest
  • Add 2006 contest
  • Add 2005 contest
  • Add 2004 contest
  • Add 2003 contest
  • Add 2002 contest
  • Add 2001 contest
  • Add 2000 contest
  • Add 1999 contest
  • Add 1998 contest
  • Add 1997 contest
  • Add 1996 contest

Folder structure

[ime] tree                                                                                                                                                       
.
├── 2015
├── 2016
│   ├── Main
│   │   └── A
│   │       ├── C
│   │       │   └── solution_1.c
│   │       ├── Python
│   │       │   └── solution_1.py
│   │       └── __TESTS__
│   │           ├── A_1.in
│   │           ├── A_1.out
│   │           ├── A_2.in
│   │           └── A_2.out
│   └── Warming
│       └── A
│           └── Python
│               └── solution_1.py
├── add.py
├── ci.py
└── test.py

11 directories, 9 files

The Marathon

IME's programming marathon is composed of a Warming and the Main event. Both events consist of Problems named with letters.

A Problem

Problems are letter identified questions that must be solved using a programming language. First, the solution must read from stdin then output to stdou the solution. All test cases are provided in IME's website.

Files

add.py

Bootstrap a problem folder. Nothing so important.

ci.py

All executions involving our CI server

test.py

As a problem solver, I can run a script that tests if my solution is right based on the provided test cases. If passes, I receive a OK message. If fails, I receive the wrongly outputed values campared to the expected values.

Sample .in file

4 4
1 2 2
2 3 1
2 4 10
3 4 6

Sample .out file

12

Other possible features

  • Speed comparison

Conclusion

Make it easy for solvers solve.

Thanks! I'll read this in soon.

I read now. Great description! Will be fun code this! 💃

Updated description to add goals.