====== FreeStyle C0ding Contest ====== {{template>:project:infobox| name=FreeStyle C0ding Contest| image=zavod.jpg?200| founder=[[user:harvie]]| status=suspended}} ~~META: status = suspended &relation firstimage = :project:zavod.jpg ~~ ===== Rules ===== * [[user:harvie]] can override the jury, refuse task proposals or change anything else (but he cannot win anything) * jury member can refuse any task proposal or submission * jury member cannot submit (or win) * How will jury members rate submissions * If they will not meet the requirements give in task definition they will be disqualified * Task specific quality of solution will be rated (eg.: how strong compression is achieved) * If there will be two or more submissions with same quality, then speed will be rated * Using [[https://github.com/Harvie/Programs/blob/master/perl/timebench/timebench.pl|TimeBench]] (with low nice and ionice value, storing temporary files in ramdisk) * Common requirements for all submissions * Should work on Debian GNU/Linux * Should not need to install or compile any dependencies that are not included in official debian repositories (non-free packages are not supported!) * If compilation is needed you have to provide Makefile! * If you win you cannot get reward untill all code is publicly available (on web) and this wiki page links on it * Winner should make short talk about used alghorithms and programming techniques ===== Round #1 (status: gathering tasks, deadline: not yet) ===== ==== Rewards (everyone can offer something) ==== | **donator** | **prize** | | [[user:harvie]] | 1st place can choose: Pilsner Beer, Kiss, Harvie's autogram on belly | ==== Jury ==== * Members * Harvie ==== Tasks ==== === #1 - SubString optimalization === * Find shortest string containing all of given (sub)strings (newline separated UTF-8 on STDIN) * (shortest string found wins :-) * Sample datasets * echo {00..99} | tr ' ' '\n' * echo {0000..9999} | tr ' ' '\n' * for i in {0..1000}; do echo -n $i | md5sum | head -c 5; echo; done * for i in {0..1000}; do head -c 1024 /dev/urandom | md5sum | head -c 10; echo; done * any other completely random strings * Example * input: 23, 42, 12, 34 * output: 12342 * Background story: hacking ancient answer machines :-)