diff --git a/Makefile b/2020/Makefile similarity index 100% rename from Makefile rename to 2020/Makefile diff --git a/OUTPUT b/2020/OUTPUT similarity index 98% rename from OUTPUT rename to 2020/OUTPUT index a2494d2..f610ba2 100644 --- a/OUTPUT +++ b/2020/OUTPUT @@ -443,3 +443,11 @@ ex1.bash : res=285 ex2.bash : res=412 time: 0:03.37 real, 3.34 user, 0.03 sys context-switch: 19+1, page-faults: 0+11909 + +========================================= +================= day20 ================= +========================================= + +ex1.bash : res=5966506063747 + time: 0:00.54 real, 0.53 user, 0.00 sys + context-switch: 1+1, page-faults: 0+223 diff --git a/day01/INPUT.txt b/2020/day01/INPUT.txt similarity index 100% rename from day01/INPUT.txt rename to 2020/day01/INPUT.txt diff --git a/day01/Makefile b/2020/day01/Makefile similarity index 100% rename from day01/Makefile rename to 2020/day01/Makefile diff --git a/day01/OUTPUT b/2020/day01/OUTPUT similarity index 100% rename from day01/OUTPUT rename to 2020/day01/OUTPUT diff --git a/day01/README b/2020/day01/README similarity index 100% rename from day01/README rename to 2020/day01/README diff --git a/day01/TEST.txt b/2020/day01/TEST.txt similarity index 100% rename from day01/TEST.txt rename to 2020/day01/TEST.txt diff --git a/day01/ex1-c.c b/2020/day01/ex1-c.c similarity index 100% rename from day01/ex1-c.c rename to 2020/day01/ex1-c.c diff --git a/day01/ex1-cob.cob b/2020/day01/ex1-cob.cob similarity index 100% rename from day01/ex1-cob.cob rename to 2020/day01/ex1-cob.cob diff --git a/day01/ex1.bash b/2020/day01/ex1.bash similarity index 100% rename from day01/ex1.bash rename to 2020/day01/ex1.bash diff --git a/day01/ex2-c.c b/2020/day01/ex2-c.c similarity index 100% rename from day01/ex2-c.c rename to 2020/day01/ex2-c.c diff --git a/day01/ex2-pure-sort-cob.cob b/2020/day01/ex2-pure-sort-cob.cob similarity index 100% rename from day01/ex2-pure-sort-cob.cob rename to 2020/day01/ex2-pure-sort-cob.cob diff --git a/day01/ex2-pure-sort.bash b/2020/day01/ex2-pure-sort.bash similarity index 100% rename from day01/ex2-pure-sort.bash rename to 2020/day01/ex2-pure-sort.bash diff --git a/day01/ex2-sort-cob.cob b/2020/day01/ex2-sort-cob.cob similarity index 100% rename from day01/ex2-sort-cob.cob rename to 2020/day01/ex2-sort-cob.cob diff --git a/day01/ex2-sort.bash b/2020/day01/ex2-sort.bash similarity index 100% rename from day01/ex2-sort.bash rename to 2020/day01/ex2-sort.bash diff --git a/day01/ex2.bash b/2020/day01/ex2.bash similarity index 100% rename from day01/ex2.bash rename to 2020/day01/ex2.bash diff --git a/day02/INPUT.txt b/2020/day02/INPUT.txt similarity index 100% rename from day02/INPUT.txt rename to 2020/day02/INPUT.txt diff --git a/day02/Makefile b/2020/day02/Makefile similarity index 100% rename from day02/Makefile rename to 2020/day02/Makefile diff --git a/day02/OUTPUT b/2020/day02/OUTPUT similarity index 100% rename from day02/OUTPUT rename to 2020/day02/OUTPUT diff --git a/day02/README b/2020/day02/README similarity index 100% rename from day02/README rename to 2020/day02/README diff --git a/day02/TEST.txt b/2020/day02/TEST.txt similarity index 100% rename from day02/TEST.txt rename to 2020/day02/TEST.txt diff --git a/day02/ex1-c.c b/2020/day02/ex1-c.c similarity index 100% rename from day02/ex1-c.c rename to 2020/day02/ex1-c.c diff --git a/day02/ex1.bash b/2020/day02/ex1.bash similarity index 100% rename from day02/ex1.bash rename to 2020/day02/ex1.bash diff --git a/day02/ex2-c.c b/2020/day02/ex2-c.c similarity index 100% rename from day02/ex2-c.c rename to 2020/day02/ex2-c.c diff --git a/day02/ex2.bash b/2020/day02/ex2.bash similarity index 100% rename from day02/ex2.bash rename to 2020/day02/ex2.bash diff --git a/day03/INPUT.txt b/2020/day03/INPUT.txt similarity index 100% rename from day03/INPUT.txt rename to 2020/day03/INPUT.txt diff --git a/day03/Makefile b/2020/day03/Makefile similarity index 100% rename from day03/Makefile rename to 2020/day03/Makefile diff --git a/day03/OUTPUT b/2020/day03/OUTPUT similarity index 100% rename from day03/OUTPUT rename to 2020/day03/OUTPUT diff --git a/day03/README b/2020/day03/README similarity index 100% rename from day03/README rename to 2020/day03/README diff --git a/day03/TEST.txt b/2020/day03/TEST.txt similarity index 100% rename from day03/TEST.txt rename to 2020/day03/TEST.txt diff --git a/day03/ex1-c.c b/2020/day03/ex1-c.c similarity index 100% rename from day03/ex1-c.c rename to 2020/day03/ex1-c.c diff --git a/day03/ex1.bash b/2020/day03/ex1.bash similarity index 100% rename from day03/ex1.bash rename to 2020/day03/ex1.bash diff --git a/day03/ex2-c.c b/2020/day03/ex2-c.c similarity index 100% rename from day03/ex2-c.c rename to 2020/day03/ex2-c.c diff --git a/day03/ex2.bash b/2020/day03/ex2.bash similarity index 100% rename from day03/ex2.bash rename to 2020/day03/ex2.bash diff --git a/day04/INPUT.txt b/2020/day04/INPUT.txt similarity index 100% rename from day04/INPUT.txt rename to 2020/day04/INPUT.txt diff --git a/day04/Makefile b/2020/day04/Makefile similarity index 100% rename from day04/Makefile rename to 2020/day04/Makefile diff --git a/day04/OUTPUT b/2020/day04/OUTPUT similarity index 100% rename from day04/OUTPUT rename to 2020/day04/OUTPUT diff --git a/day04/README b/2020/day04/README similarity index 100% rename from day04/README rename to 2020/day04/README diff --git a/day04/TEST.txt b/2020/day04/TEST.txt similarity index 100% rename from day04/TEST.txt rename to 2020/day04/TEST.txt diff --git a/day04/ex1-c.c b/2020/day04/ex1-c.c similarity index 100% rename from day04/ex1-c.c rename to 2020/day04/ex1-c.c diff --git a/day04/ex1.bash b/2020/day04/ex1.bash similarity index 100% rename from day04/ex1.bash rename to 2020/day04/ex1.bash diff --git a/day04/ex2-c.c b/2020/day04/ex2-c.c similarity index 100% rename from day04/ex2-c.c rename to 2020/day04/ex2-c.c diff --git a/day04/ex2.bash b/2020/day04/ex2.bash similarity index 100% rename from day04/ex2.bash rename to 2020/day04/ex2.bash diff --git a/day05/INPUT.txt b/2020/day05/INPUT.txt similarity index 100% rename from day05/INPUT.txt rename to 2020/day05/INPUT.txt diff --git a/day05/Makefile b/2020/day05/Makefile similarity index 100% rename from day05/Makefile rename to 2020/day05/Makefile diff --git a/day05/OUTPUT b/2020/day05/OUTPUT similarity index 100% rename from day05/OUTPUT rename to 2020/day05/OUTPUT diff --git a/day05/README b/2020/day05/README similarity index 100% rename from day05/README rename to 2020/day05/README diff --git a/day05/TEST.txt b/2020/day05/TEST.txt similarity index 100% rename from day05/TEST.txt rename to 2020/day05/TEST.txt diff --git a/day05/ex1-c.c b/2020/day05/ex1-c.c similarity index 100% rename from day05/ex1-c.c rename to 2020/day05/ex1-c.c diff --git a/day05/ex1.bash b/2020/day05/ex1.bash similarity index 100% rename from day05/ex1.bash rename to 2020/day05/ex1.bash diff --git a/day05/ex2-c.c b/2020/day05/ex2-c.c similarity index 100% rename from day05/ex2-c.c rename to 2020/day05/ex2-c.c diff --git a/day05/ex2.bash b/2020/day05/ex2.bash similarity index 100% rename from day05/ex2.bash rename to 2020/day05/ex2.bash diff --git a/day06/INPUT.txt b/2020/day06/INPUT.txt similarity index 100% rename from day06/INPUT.txt rename to 2020/day06/INPUT.txt diff --git a/day06/Makefile b/2020/day06/Makefile similarity index 100% rename from day06/Makefile rename to 2020/day06/Makefile diff --git a/day06/OUTPUT b/2020/day06/OUTPUT similarity index 100% rename from day06/OUTPUT rename to 2020/day06/OUTPUT diff --git a/day06/README b/2020/day06/README similarity index 100% rename from day06/README rename to 2020/day06/README diff --git a/day06/TEST.txt b/2020/day06/TEST.txt similarity index 100% rename from day06/TEST.txt rename to 2020/day06/TEST.txt diff --git a/day06/bash.sh b/2020/day06/bash.sh similarity index 100% rename from day06/bash.sh rename to 2020/day06/bash.sh diff --git a/day06/c.sh b/2020/day06/c.sh similarity index 100% rename from day06/c.sh rename to 2020/day06/c.sh diff --git a/day06/ex1-bis.bash b/2020/day06/ex1-bis.bash similarity index 100% rename from day06/ex1-bis.bash rename to 2020/day06/ex1-bis.bash diff --git a/day06/ex1-c.c b/2020/day06/ex1-c.c similarity index 100% rename from day06/ex1-c.c rename to 2020/day06/ex1-c.c diff --git a/day06/ex1.bash b/2020/day06/ex1.bash similarity index 100% rename from day06/ex1.bash rename to 2020/day06/ex1.bash diff --git a/day06/ex2-bis.bash b/2020/day06/ex2-bis.bash similarity index 100% rename from day06/ex2-bis.bash rename to 2020/day06/ex2-bis.bash diff --git a/day06/ex2-c.c b/2020/day06/ex2-c.c similarity index 100% rename from day06/ex2-c.c rename to 2020/day06/ex2-c.c diff --git a/day06/ex2.bash b/2020/day06/ex2.bash similarity index 100% rename from day06/ex2.bash rename to 2020/day06/ex2.bash diff --git a/day07/INPUT.txt b/2020/day07/INPUT.txt similarity index 100% rename from day07/INPUT.txt rename to 2020/day07/INPUT.txt diff --git a/day07/Makefile b/2020/day07/Makefile similarity index 100% rename from day07/Makefile rename to 2020/day07/Makefile diff --git a/day07/OUTPUT b/2020/day07/OUTPUT similarity index 100% rename from day07/OUTPUT rename to 2020/day07/OUTPUT diff --git a/day07/README b/2020/day07/README similarity index 100% rename from day07/README rename to 2020/day07/README diff --git a/day07/TEST.txt b/2020/day07/TEST.txt similarity index 100% rename from day07/TEST.txt rename to 2020/day07/TEST.txt diff --git a/day07/TEST2.txt b/2020/day07/TEST2.txt similarity index 100% rename from day07/TEST2.txt rename to 2020/day07/TEST2.txt diff --git a/day07/ex1-bis.bash b/2020/day07/ex1-bis.bash similarity index 100% rename from day07/ex1-bis.bash rename to 2020/day07/ex1-bis.bash diff --git a/day07/ex1-c.c b/2020/day07/ex1-c.c similarity index 100% rename from day07/ex1-c.c rename to 2020/day07/ex1-c.c diff --git a/day07/ex1.bash b/2020/day07/ex1.bash similarity index 100% rename from day07/ex1.bash rename to 2020/day07/ex1.bash diff --git a/day07/ex2-c.c b/2020/day07/ex2-c.c similarity index 100% rename from day07/ex2-c.c rename to 2020/day07/ex2-c.c diff --git a/day07/ex2.bash b/2020/day07/ex2.bash similarity index 100% rename from day07/ex2.bash rename to 2020/day07/ex2.bash diff --git a/day08/INPUT.txt b/2020/day08/INPUT.txt similarity index 100% rename from day08/INPUT.txt rename to 2020/day08/INPUT.txt diff --git a/day08/Makefile b/2020/day08/Makefile similarity index 100% rename from day08/Makefile rename to 2020/day08/Makefile diff --git a/day08/OUTPUT b/2020/day08/OUTPUT similarity index 100% rename from day08/OUTPUT rename to 2020/day08/OUTPUT diff --git a/day08/README b/2020/day08/README similarity index 100% rename from day08/README rename to 2020/day08/README diff --git a/day08/TEST.txt b/2020/day08/TEST.txt similarity index 100% rename from day08/TEST.txt rename to 2020/day08/TEST.txt diff --git a/day08/ex1-c.c b/2020/day08/ex1-c.c similarity index 100% rename from day08/ex1-c.c rename to 2020/day08/ex1-c.c diff --git a/day08/ex1.bash b/2020/day08/ex1.bash similarity index 100% rename from day08/ex1.bash rename to 2020/day08/ex1.bash diff --git a/day08/ex2-c.c b/2020/day08/ex2-c.c similarity index 100% rename from day08/ex2-c.c rename to 2020/day08/ex2-c.c diff --git a/day08/ex2.bash b/2020/day08/ex2.bash similarity index 100% rename from day08/ex2.bash rename to 2020/day08/ex2.bash diff --git a/day09/INPUT.txt b/2020/day09/INPUT.txt similarity index 100% rename from day09/INPUT.txt rename to 2020/day09/INPUT.txt diff --git a/day09/Makefile b/2020/day09/Makefile similarity index 100% rename from day09/Makefile rename to 2020/day09/Makefile diff --git a/day09/OUTPUT b/2020/day09/OUTPUT similarity index 100% rename from day09/OUTPUT rename to 2020/day09/OUTPUT diff --git a/day09/README b/2020/day09/README similarity index 100% rename from day09/README rename to 2020/day09/README diff --git a/day09/TEST.txt b/2020/day09/TEST.txt similarity index 100% rename from day09/TEST.txt rename to 2020/day09/TEST.txt diff --git a/day09/ex1-c.c b/2020/day09/ex1-c.c similarity index 100% rename from day09/ex1-c.c rename to 2020/day09/ex1-c.c diff --git a/day09/ex1.bash b/2020/day09/ex1.bash similarity index 100% rename from day09/ex1.bash rename to 2020/day09/ex1.bash diff --git a/day09/ex2-c.c b/2020/day09/ex2-c.c similarity index 100% rename from day09/ex2-c.c rename to 2020/day09/ex2-c.c diff --git a/day09/ex2.bash b/2020/day09/ex2.bash similarity index 100% rename from day09/ex2.bash rename to 2020/day09/ex2.bash diff --git a/day10/INPUT.txt b/2020/day10/INPUT.txt similarity index 100% rename from day10/INPUT.txt rename to 2020/day10/INPUT.txt diff --git a/day10/Makefile b/2020/day10/Makefile similarity index 100% rename from day10/Makefile rename to 2020/day10/Makefile diff --git a/day10/OUTPUT b/2020/day10/OUTPUT similarity index 100% rename from day10/OUTPUT rename to 2020/day10/OUTPUT diff --git a/day10/README b/2020/day10/README similarity index 100% rename from day10/README rename to 2020/day10/README diff --git a/day10/TEST.txt b/2020/day10/TEST.txt similarity index 100% rename from day10/TEST.txt rename to 2020/day10/TEST.txt diff --git a/day10/TEST2.txt b/2020/day10/TEST2.txt similarity index 100% rename from day10/TEST2.txt rename to 2020/day10/TEST2.txt diff --git a/day10/ex1-c.c b/2020/day10/ex1-c.c similarity index 100% rename from day10/ex1-c.c rename to 2020/day10/ex1-c.c diff --git a/day10/ex1.bash b/2020/day10/ex1.bash similarity index 100% rename from day10/ex1.bash rename to 2020/day10/ex1.bash diff --git a/day10/ex2-c.c b/2020/day10/ex2-c.c similarity index 100% rename from day10/ex2-c.c rename to 2020/day10/ex2-c.c diff --git a/day10/ex2.bash b/2020/day10/ex2.bash similarity index 100% rename from day10/ex2.bash rename to 2020/day10/ex2.bash diff --git a/day11/INPUT.txt b/2020/day11/INPUT.txt similarity index 100% rename from day11/INPUT.txt rename to 2020/day11/INPUT.txt diff --git a/day11/Makefile b/2020/day11/Makefile similarity index 100% rename from day11/Makefile rename to 2020/day11/Makefile diff --git a/day11/OUTPUT b/2020/day11/OUTPUT similarity index 100% rename from day11/OUTPUT rename to 2020/day11/OUTPUT diff --git a/day11/README b/2020/day11/README similarity index 100% rename from day11/README rename to 2020/day11/README diff --git a/day11/TEST.txt b/2020/day11/TEST.txt similarity index 100% rename from day11/TEST.txt rename to 2020/day11/TEST.txt diff --git a/day11/ex1-c.c b/2020/day11/ex1-c.c similarity index 100% rename from day11/ex1-c.c rename to 2020/day11/ex1-c.c diff --git a/day11/ex1-slow.bash b/2020/day11/ex1-slow.bash similarity index 100% rename from day11/ex1-slow.bash rename to 2020/day11/ex1-slow.bash diff --git a/day11/ex1.bash b/2020/day11/ex1.bash similarity index 100% rename from day11/ex1.bash rename to 2020/day11/ex1.bash diff --git a/day11/ex2-c.c b/2020/day11/ex2-c.c similarity index 100% rename from day11/ex2-c.c rename to 2020/day11/ex2-c.c diff --git a/day11/ex2.bash b/2020/day11/ex2.bash similarity index 100% rename from day11/ex2.bash rename to 2020/day11/ex2.bash diff --git a/day12/INPUT.txt b/2020/day12/INPUT.txt similarity index 100% rename from day12/INPUT.txt rename to 2020/day12/INPUT.txt diff --git a/day12/Makefile b/2020/day12/Makefile similarity index 100% rename from day12/Makefile rename to 2020/day12/Makefile diff --git a/day12/OUTPUT b/2020/day12/OUTPUT similarity index 100% rename from day12/OUTPUT rename to 2020/day12/OUTPUT diff --git a/day12/README b/2020/day12/README similarity index 100% rename from day12/README rename to 2020/day12/README diff --git a/day12/TEST.txt b/2020/day12/TEST.txt similarity index 100% rename from day12/TEST.txt rename to 2020/day12/TEST.txt diff --git a/day12/ex1-c.c b/2020/day12/ex1-c.c similarity index 100% rename from day12/ex1-c.c rename to 2020/day12/ex1-c.c diff --git a/day12/ex1.bash b/2020/day12/ex1.bash similarity index 100% rename from day12/ex1.bash rename to 2020/day12/ex1.bash diff --git a/day12/ex2-c.c b/2020/day12/ex2-c.c similarity index 100% rename from day12/ex2-c.c rename to 2020/day12/ex2-c.c diff --git a/day12/ex2.bash b/2020/day12/ex2.bash similarity index 100% rename from day12/ex2.bash rename to 2020/day12/ex2.bash diff --git a/day13/INPUT.txt b/2020/day13/INPUT.txt similarity index 100% rename from day13/INPUT.txt rename to 2020/day13/INPUT.txt diff --git a/day13/Makefile b/2020/day13/Makefile similarity index 100% rename from day13/Makefile rename to 2020/day13/Makefile diff --git a/day13/OUTPUT b/2020/day13/OUTPUT similarity index 100% rename from day13/OUTPUT rename to 2020/day13/OUTPUT diff --git a/day13/README b/2020/day13/README similarity index 100% rename from day13/README rename to 2020/day13/README diff --git a/day13/TEST.txt b/2020/day13/TEST.txt similarity index 100% rename from day13/TEST.txt rename to 2020/day13/TEST.txt diff --git a/day13/TEST2.txt b/2020/day13/TEST2.txt similarity index 100% rename from day13/TEST2.txt rename to 2020/day13/TEST2.txt diff --git a/day13/ex1-c.c b/2020/day13/ex1-c.c similarity index 100% rename from day13/ex1-c.c rename to 2020/day13/ex1-c.c diff --git a/day13/ex1.bash b/2020/day13/ex1.bash similarity index 100% rename from day13/ex1.bash rename to 2020/day13/ex1.bash diff --git a/day13/ex2-c.c b/2020/day13/ex2-c.c similarity index 100% rename from day13/ex2-c.c rename to 2020/day13/ex2-c.c diff --git a/day13/ex2.bash b/2020/day13/ex2.bash similarity index 100% rename from day13/ex2.bash rename to 2020/day13/ex2.bash diff --git a/day14/INPUT.txt b/2020/day14/INPUT.txt similarity index 100% rename from day14/INPUT.txt rename to 2020/day14/INPUT.txt diff --git a/day14/Makefile b/2020/day14/Makefile similarity index 100% rename from day14/Makefile rename to 2020/day14/Makefile diff --git a/day14/OUTPUT b/2020/day14/OUTPUT similarity index 100% rename from day14/OUTPUT rename to 2020/day14/OUTPUT diff --git a/day14/README b/2020/day14/README similarity index 100% rename from day14/README rename to 2020/day14/README diff --git a/day14/TEST.txt b/2020/day14/TEST.txt similarity index 100% rename from day14/TEST.txt rename to 2020/day14/TEST.txt diff --git a/day14/TEST2.txt b/2020/day14/TEST2.txt similarity index 100% rename from day14/TEST2.txt rename to 2020/day14/TEST2.txt diff --git a/day14/TEST3.txt b/2020/day14/TEST3.txt similarity index 100% rename from day14/TEST3.txt rename to 2020/day14/TEST3.txt diff --git a/day14/ex1-c.c b/2020/day14/ex1-c.c similarity index 100% rename from day14/ex1-c.c rename to 2020/day14/ex1-c.c diff --git a/day14/ex1.bash b/2020/day14/ex1.bash similarity index 100% rename from day14/ex1.bash rename to 2020/day14/ex1.bash diff --git a/day14/ex2-c.c b/2020/day14/ex2-c.c similarity index 100% rename from day14/ex2-c.c rename to 2020/day14/ex2-c.c diff --git a/day14/ex2.bash b/2020/day14/ex2.bash similarity index 100% rename from day14/ex2.bash rename to 2020/day14/ex2.bash diff --git a/day15/INPUT.txt b/2020/day15/INPUT.txt similarity index 100% rename from day15/INPUT.txt rename to 2020/day15/INPUT.txt diff --git a/day15/Makefile b/2020/day15/Makefile similarity index 100% rename from day15/Makefile rename to 2020/day15/Makefile diff --git a/day15/OUTPUT b/2020/day15/OUTPUT similarity index 100% rename from day15/OUTPUT rename to 2020/day15/OUTPUT diff --git a/day15/OUTPUT.bash b/2020/day15/OUTPUT.bash similarity index 100% rename from day15/OUTPUT.bash rename to 2020/day15/OUTPUT.bash diff --git a/day15/README b/2020/day15/README similarity index 100% rename from day15/README rename to 2020/day15/README diff --git a/day15/TEST.txt b/2020/day15/TEST.txt similarity index 100% rename from day15/TEST.txt rename to 2020/day15/TEST.txt diff --git a/day15/TEST2.txt b/2020/day15/TEST2.txt similarity index 100% rename from day15/TEST2.txt rename to 2020/day15/TEST2.txt diff --git a/day15/TEST3.txt b/2020/day15/TEST3.txt similarity index 100% rename from day15/TEST3.txt rename to 2020/day15/TEST3.txt diff --git a/day15/ex1-2-slow.bash b/2020/day15/ex1-2-slow.bash similarity index 100% rename from day15/ex1-2-slow.bash rename to 2020/day15/ex1-2-slow.bash diff --git a/day15/ex1-c.c b/2020/day15/ex1-c.c similarity index 100% rename from day15/ex1-c.c rename to 2020/day15/ex1-c.c diff --git a/day15/ex1.bash b/2020/day15/ex1.bash similarity index 100% rename from day15/ex1.bash rename to 2020/day15/ex1.bash diff --git a/day16/INPUT.txt b/2020/day16/INPUT.txt similarity index 100% rename from day16/INPUT.txt rename to 2020/day16/INPUT.txt diff --git a/day16/Makefile b/2020/day16/Makefile similarity index 100% rename from day16/Makefile rename to 2020/day16/Makefile diff --git a/day16/OUTPUT b/2020/day16/OUTPUT similarity index 100% rename from day16/OUTPUT rename to 2020/day16/OUTPUT diff --git a/day16/README b/2020/day16/README similarity index 100% rename from day16/README rename to 2020/day16/README diff --git a/day16/TEST.txt b/2020/day16/TEST.txt similarity index 100% rename from day16/TEST.txt rename to 2020/day16/TEST.txt diff --git a/day16/TEST2.txt b/2020/day16/TEST2.txt similarity index 100% rename from day16/TEST2.txt rename to 2020/day16/TEST2.txt diff --git a/day16/ex1-c.c b/2020/day16/ex1-c.c similarity index 100% rename from day16/ex1-c.c rename to 2020/day16/ex1-c.c diff --git a/day16/ex1.bash b/2020/day16/ex1.bash similarity index 100% rename from day16/ex1.bash rename to 2020/day16/ex1.bash diff --git a/day16/ex2-c.c b/2020/day16/ex2-c.c similarity index 100% rename from day16/ex2-c.c rename to 2020/day16/ex2-c.c diff --git a/day16/ex2.bash b/2020/day16/ex2.bash similarity index 100% rename from day16/ex2.bash rename to 2020/day16/ex2.bash diff --git a/day17/INPUT.txt b/2020/day17/INPUT.txt similarity index 100% rename from day17/INPUT.txt rename to 2020/day17/INPUT.txt diff --git a/day17/Makefile b/2020/day17/Makefile similarity index 100% rename from day17/Makefile rename to 2020/day17/Makefile diff --git a/day17/OUTPUT b/2020/day17/OUTPUT similarity index 100% rename from day17/OUTPUT rename to 2020/day17/OUTPUT diff --git a/day17/README b/2020/day17/README similarity index 100% rename from day17/README rename to 2020/day17/README diff --git a/day17/TEST.txt b/2020/day17/TEST.txt similarity index 100% rename from day17/TEST.txt rename to 2020/day17/TEST.txt diff --git a/day17/ex1-c.c b/2020/day17/ex1-c.c similarity index 100% rename from day17/ex1-c.c rename to 2020/day17/ex1-c.c diff --git a/day17/ex1-v1.bash b/2020/day17/ex1-v1.bash similarity index 100% rename from day17/ex1-v1.bash rename to 2020/day17/ex1-v1.bash diff --git a/day17/ex1.bash b/2020/day17/ex1.bash similarity index 100% rename from day17/ex1.bash rename to 2020/day17/ex1.bash diff --git a/day17/ex2-c.c b/2020/day17/ex2-c.c similarity index 100% rename from day17/ex2-c.c rename to 2020/day17/ex2-c.c diff --git a/day17/ex2.bash b/2020/day17/ex2.bash similarity index 100% rename from day17/ex2.bash rename to 2020/day17/ex2.bash diff --git a/day17/list.h b/2020/day17/list.h similarity index 100% rename from day17/list.h rename to 2020/day17/list.h diff --git a/day18/INPUT.txt b/2020/day18/INPUT.txt similarity index 100% rename from day18/INPUT.txt rename to 2020/day18/INPUT.txt diff --git a/day18/Makefile b/2020/day18/Makefile similarity index 100% rename from day18/Makefile rename to 2020/day18/Makefile diff --git a/day18/OUTPUT b/2020/day18/OUTPUT similarity index 100% rename from day18/OUTPUT rename to 2020/day18/OUTPUT diff --git a/day18/README b/2020/day18/README similarity index 100% rename from day18/README rename to 2020/day18/README diff --git a/day18/TEST.txt b/2020/day18/TEST.txt similarity index 100% rename from day18/TEST.txt rename to 2020/day18/TEST.txt diff --git a/day18/ex1.bash b/2020/day18/ex1.bash similarity index 100% rename from day18/ex1.bash rename to 2020/day18/ex1.bash diff --git a/day18/ex12-c.c b/2020/day18/ex12-c.c similarity index 100% rename from day18/ex12-c.c rename to 2020/day18/ex12-c.c diff --git a/day18/ex2.bash b/2020/day18/ex2.bash similarity index 100% rename from day18/ex2.bash rename to 2020/day18/ex2.bash diff --git a/day19/INPUT.txt b/2020/day19/INPUT.txt similarity index 100% rename from day19/INPUT.txt rename to 2020/day19/INPUT.txt diff --git a/day19/Makefile b/2020/day19/Makefile similarity index 100% rename from day19/Makefile rename to 2020/day19/Makefile diff --git a/day19/OUTPUT b/2020/day19/OUTPUT similarity index 100% rename from day19/OUTPUT rename to 2020/day19/OUTPUT diff --git a/day19/README b/2020/day19/README similarity index 100% rename from day19/README rename to 2020/day19/README diff --git a/day19/TEST.txt b/2020/day19/TEST.txt similarity index 100% rename from day19/TEST.txt rename to 2020/day19/TEST.txt diff --git a/day19/TEST2.txt b/2020/day19/TEST2.txt similarity index 100% rename from day19/TEST2.txt rename to 2020/day19/TEST2.txt diff --git a/2020/day19/ex1-c.c b/2020/day19/ex1-c.c new file mode 100644 index 0000000..a852599 --- /dev/null +++ b/2020/day19/ex1-c.c @@ -0,0 +1,203 @@ +/* ex1-c: Advent2020 game, day 18/tasks 1 & 2 + */ + +#include +#include +#include +#include + +#define T_LPAR (-'(') +#define T_RPAR (-')') + +#define T_PLUS (-'+') +#define T_MULT (-'*') + +#define T_ERR (-'E') +#define T_OK (-'O') +#define T_END (-'$') + +#define LEN_MAX 1024 + +#define NPUSH(n) (push(&nstack, (n))) +#define OPUSH(o) (push(&ostack, (o))) + +#define NPOP() (pop(&nstack)) +#define OPOP() (pop(&ostack)) + +#define NTOP() (top(&nstack)) +#define OTOP() (top(&ostack)) + +#define OEMPTY() (empty(&ostack)) + +#define DIGIT(c) (((c) >= '0') && ((c) <= '9')) + +static struct stack { + int last; + long elt[LEN_MAX]; +} nstack, ostack; + +static char *saveptr=NULL; + +static int prio_1(long op) +{ + return op==T_PLUS || op==T_MULT? 1: 0; +} +static int prio_2(long op) +{ + return op==T_PLUS? 2: op==T_MULT? 1: 0; +} +static int (*prio)()=&prio_1; + +static long push(struct stack *s, long val) +{ + s->elt[s->last++]=val; + return val; +} +static long pop(struct stack *s) +{ + return s->elt[--s->last]; +} +static long top(struct stack *s) +{ + return s->elt[s->last-1]; +} +static long empty(struct stack *s) +{ + return s->last==0; +} + +static void print() { + int i; + printf("NSTACK: "); + for (i=0; i= (*prio)(res)) + eval_top(); + OPUSH(res); + break; + + default: + NPUSH(res); + break; + } + res=get_tok(); + //print(); + } + while(!OEMPTY()) + eval_top(); + + // return NSTACK's top + //printf("Returning %ld\n", NTOP()); + return NPOP(); +//end: +// return left; +} + +int main(ac, av) + int ac; + char **av; +{ + char line[1024]; + long res=0, tmp; + + if (ac != 2) { + fprintf(stderr, "usage: %s [1|2]\n", *av); + exit (1); + } + if (**(av+1) == '2') + prio=&prio_2; + + while (fgets(line, sizeof line, stdin)) { + //gets(line, sizeof line, stdin); + //NPUSH(10); + //NPUSH(100); + //NPUSH(1000); + //print(); + //printf("TOP=%ld\n", NTOP()); + //NPOP(); + //print(); + + saveptr=line; + //printf("%s", line); + tmp=eval_expr(); + //printf("%s : res=%ld\n", line, tmp); + res+=tmp; + } + printf("%s : res=%ld\n", *av, res); + exit (0); +} diff --git a/day19/ex1.bash b/2020/day19/ex1.bash similarity index 100% rename from day19/ex1.bash rename to 2020/day19/ex1.bash diff --git a/day19/ex2.bash b/2020/day19/ex2.bash similarity index 100% rename from day19/ex2.bash rename to 2020/day19/ex2.bash diff --git a/day20/INPUT.txt b/2020/day20/INPUT.txt similarity index 100% rename from day20/INPUT.txt rename to 2020/day20/INPUT.txt diff --git a/day20/Makefile b/2020/day20/Makefile similarity index 93% rename from day20/Makefile rename to 2020/day20/Makefile index 224acfb..62c581b 100644 --- a/day20/Makefile +++ b/2020/day20/Makefile @@ -20,7 +20,7 @@ ex1: @#$(TIME) ex1-c 2020 < $(INPUT) 2>&1 ex2: - @$(TIME) ex2.bash < $(INPUT) 2>&1 + @#$(TIME) ex2.bash < $(INPUT) 2>&1 @#$(TIME) ex1-c 30000000 < $(INPUT) 2>&1 clean: diff --git a/day20/README b/2020/day20/README similarity index 100% rename from day20/README rename to 2020/day20/README diff --git a/day20/TEST.txt b/2020/day20/TEST.txt similarity index 100% rename from day20/TEST.txt rename to 2020/day20/TEST.txt diff --git a/day20/ex1.bash b/2020/day20/ex1.bash old mode 100755 new mode 100644 similarity index 100% rename from day20/ex1.bash rename to 2020/day20/ex1.bash diff --git a/templates/Makefile b/2020/templates/Makefile similarity index 100% rename from templates/Makefile rename to 2020/templates/Makefile diff --git a/templates/ex1-c.c b/2020/templates/ex1-c.c similarity index 100% rename from templates/ex1-c.c rename to 2020/templates/ex1-c.c diff --git a/templates/ex1.bash b/2020/templates/ex1.bash similarity index 100% rename from templates/ex1.bash rename to 2020/templates/ex1.bash diff --git a/templates/ex2-c.c b/2020/templates/ex2-c.c similarity index 100% rename from templates/ex2-c.c rename to 2020/templates/ex2-c.c diff --git a/templates/ex2.bash b/2020/templates/ex2.bash similarity index 100% rename from templates/ex2.bash rename to 2020/templates/ex2.bash