From 0b308aa771e24910c5a2639c896cacf8afd2a841 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dobos=20=C3=81d=C3=A1m?= Date: Mon, 5 Dec 2022 02:18:30 +0100 Subject: [PATCH] Day2 --- day2/input.txt | 2500 +++++++++++++++++++++++++++++++++++++ day2/rockpaperscissors | Bin 0 -> 16160 bytes day2/rockpaperscissors.c | 30 + day2/rockpaperscissors2 | Bin 0 -> 16160 bytes day2/rockpaperscissors2.c | 33 + 5 files changed, 2563 insertions(+) create mode 100644 day2/input.txt create mode 100755 day2/rockpaperscissors create mode 100644 day2/rockpaperscissors.c create mode 100755 day2/rockpaperscissors2 create mode 100644 day2/rockpaperscissors2.c diff --git a/day2/input.txt b/day2/input.txt new file mode 100644 index 0000000..b955ddb --- /dev/null +++ b/day2/input.txt @@ -0,0 +1,2500 @@ +A Z +A Z +A Z +B Z +C X +A Z +A Z +C Y +A Z +A Y +B Y +A Z +C X +A Z +A Z +A Z +A Z +A Y +A Z +A Z +C Y +C X +C X +C X +A Z +A Z +B Y +A Z +A Z +C Z +B Z +A Y +A Z +B Y +A Z +B Y +A X +B Z +A Z +A Z +A Z +C X +C X +A X +A Z +A Z +C X +A Z +B Y +A Z +B Z +A Z +A Z +B Z +B Z +C Y +B Z +A X +B Z +A Z +B Y +A Z +B Z +C X +A Z +B Y +B Z +A Z +B Y +C X +B Y +A Z +A Z +A Z +B Y +A Z +A Z +B Y +B Z +C Z +A X +A Z +A Z +C Z +C X +A Z +C X +A Z +A X +A Z +A Z +A Z +B X +B Y +A Z +A Z +A Z +C Y +B Y +C X +C X +A Z +A Z +A Z +A X +C X +B Z +C X +C X +A Z +A Z +A Z +A Z +B Z +A Y +A Y +C X +A Y +C X +B Y +A Z +C Z +A Z +B Y +A Z +C X +B X +A Y +C X +A Z +A Z +A Y +B Z +C X +C X +C X +B Y +A Z +A Z +B Y +A Z +B Z +C X +C Z +A Z +C X +B Z +A Z +B Y +C X +A Y +B Y +C X +C X +A Z +A Y +A Z +A Z +A Z +A Y +C X +A Z +A Z +B Z +A Z +B Z +A Z +C Z +C Z +A Z +A Z +B Z +A Z +B Z +A Z +B Z +B Y +B Y +B Z +B Y +A Z +A Z +A Z +A Z +A Z +A Z +A Z +A Z +C X +C X +A Z +A Z +C Y +A Z +C Y +B Y +C X +B Z +A Z +A Z +C X +A Z +B Y +A Z +A Z +A Z +B Z +A Z +B Y +A Z +B Y +A Z +A Z +C Z +A Z +C X +C Y +C X +C Y +C X +A Z +B Z +A Z +A Z +A Z +A Z +A Z +B Y +A Z +C X +C X +A Z +A Z +C Z +C Z +A Z +A Z +A Z +C X +A Z +A Z +A Z +A Y +A Z +C X +A Z +A Z +A Z +C X +C X +A Z +C Y +A X +A Z +A Z +A Y +B Z +A Z +A Z +A Z +C X +A Z +A Z +A Z +B Z +B Z +A Y +B Z +C X +B Y +A Z +A Z +A Z +A Z +A Z +A Z +B Z +C X +A Z +A Y +A Z +B Y +B Z +C Z +A Z +A Y +A Z +B Z +A Y +C X +A Z +A Y +A Z +C Y +A Z +A Z +B Y +C X +A Z +A Z +A X +A Z +C X +A Z +B Y +A Z +C X +A Z +B Y +A Z +C Y +B Z +C X +A Z +C X +B Y +A Z +C X +A Z +B Y +A Z +A Z +C Z +A Z +A Y +A Z +A Z +C X +A Y +A Z +B Z +A Z +A Y +C X +A Z +B Y +A Y +A Z +A Z +A Z +A Z +A Z +A Z +B Z +B Y +B X +C Y +B X +A Z +A Y +C X +A Z +A Z +C X +C Y +A Y +A Z +C X +B Y +B Y +C X +A Z +C Y +A Z +A Z +A Z +A Z +B X +A Z +A X +B Z +C Z +A Z +A Z +A Y +A Z +A Y +A Z +A Z +B Y +A Z +A Z +A Z +C X +A Z +A Z +A Z +B Z +A Z +A Z +A Z +A Z +A Z +B Z +A Z +A Z +C X +A Z +A Z +A Z +A Z +A Y +A Z +A Z +C Z +A Z +A Y +B Y +B Z +A Z +B Y +B Z +A Z +C X +A Z +B X +A Z +A Z +A Y +A Z +B X +B Z +A Z +B Z +A Y +A Z +A Z +A Z +B Y +A Z +B Z +A Z +B Z +A Z +A Y +A Z +B Z +A Z +C X +C X +A Z +A Z +B Z +A Z +A Z +C X +A Z +A X +A Z +A X +C X +A Y +C Y +B Y +A Z +A Y +A X +A Z +A Y +A Z +A Z +A Z +C X +B Z +A Z +B Y +A Z +A Y +A Z +A Z +B Z +C X +A Z +A Z +A Y +C X +C Y +B Z +A Z +A Z +B Z +C X +A Z +A Z +A Z +C Y +A Y +A Z +B Z +B Z +A Z +B Z +A X +A Z +B Z +A Z +A Z +B Y +A Z +A Y +B Y +A Z +B Z +C X +C Y +A Z +B Z +C X +A Z +B X +A Z +A Z +C X +A Z +A Y +B Z +B Y +A Z +A Y +C Y +A Z +C X +B Z +A X +A Z +A Z +A Z +A Z +A Z +A Z +A Z +A Y +A Z +A Z +C X +B Y +B Z +C X +C X +C X +A Z +A Z +B Z +B Y +A Z +A Z +B Y +B Y +A Y +A Y +A X +A Y +B Y +A Y +C X +A Z +A Z +A Z +A Y +B Y +A Z +C Y +B Z +C X +A Y +A Z +C Z +A Z +B Z +C X +B Z +C X +B Z +B Y +B Y +C X +A Z +A Z +B Z +B Z +B Z +A Z +A Z +A Z +A Z +A Z +C X +C X +C Y +B X +C X +A Z +A Z +A Z +A Z +A Z +A X +A Z +C X +A Z +C Z +A Z +C X +C Z +A Z +A Z +A Y +B Z +A X +A Z +A Z +A Z +C X +B Y +A Z +B Y +A Z +B Y +A Z +C X +A Z +C X +A Z +A Z +A Z +A Z +A Z +B X +B Y +C X +C X +A Z +C X +A Z +A Z +A Z +A Y +A Z +A Y +A Z +A Z +A Z +C Y +A Z +A Z +B Z +B Y +C X +A Y +A Z +B Z +A Z +A Z +A Z +B Y +C Z +A Y +C Y +A X +A X +B Z +A Y +C X +C X +B Z +A Z +B Z +A Z +A Z +A Y +B Z +C Y +A Z +A Z +A Z +C X +B Y +A X +A Z +C X +A Z +B Z +B Y +C X +B Y +A X +A Z +A Z +A Z +A Y +A Z +A Z +A Y +A Y +A Y +A X +A Z +A Z +B Z +A Y +A Z +C X +C X +A Z +A Z +B Z +B Y +A Z +A Z +C X +A Y +C X +B Z +A Z +A Z +A Z +A Y +A X +C Y +C X +C X +A Z +A Y +A Z +A Z +A Z +C X +A Z +A Z +B Z +C X +C X +B Z +B Z +C X +A Z +B X +A Z +B Z +A Y +A Z +A Z +C X +A Z +C Z +A Z +B Z +C X +A Z +B Y +A Y +A Z +A Z +B X +C X +B Z +C X +C X +C Y +B Z +C X +A Y +C X +A Z +A Z +A Z +A Y +A Z +C X +C Y +A Z +A Z +B Z +A Z +B Y +A X +A X +B Z +C X +B Y +A Z +C X +A Z +B Z +A Z +B Y +B Y +A X +B Y +A Z +A X +A Z +C X +A Z +A Z +B Y +C Y +A X +A Z +C Y +C X +A Z +A Z +A Z +A Y +A Z +C X +A Z +B Y +A Z +B Z +B Z +C X +B Y +A Z +C Y +A Y +A Z +A Z +C X +A Z +A Z +A Z +A Z +B Y +B Z +A Z +A Z +C Y +A Z +A Z +A Z +A Z +A Y +A Z +A Z +C Y +B Y +B Z +A Z +B Z +A Z +B Z +A Z +A Z +A Y +A Z +A Z +B Z +C Y +A Z +B Z +A X +C X +C X +A Z +A Z +A Z +A Z +A Z +C X +A Z +C X +A Z +B Y +A Z +C Y +A Y +B Z +C X +A Y +A Z +A Y +A Z +B Z +B Y +A Y +B Z +A Z +A Z +C Z +C Z +A Y +A Z +A Z +C X +A Z +A X +C Y +C X +A Z +A Z +B Y +B Z +C Y +A Z +B Z +A Z +C Z +A Z +A Y +B Y +C X +A Z +A Z +A Z +C X +A Z +A Y +A Z +A Z +B Z +C X +C X +C X +A Z +A Z +A Z +C X +A Z +A Z +A Z +A X +A Z +C X +C X +B Z +A Z +A Z +A Z +B Y +A Z +C X +A X +B Z +C X +A Z +C X +A Y +A Z +A Z +A Y +A Z +A Y +A X +C X +A Z +A Y +B Y +A Z +A Y +C Z +B Y +A Z +A Z +A Y +A Z +C X +A Z +B Y +B Z +B Z +A Z +A Z +A Z +C X +A Z +B Y +B Y +A Z +A Y +C X +A Z +C X +A Z +C X +C X +A Y +B Z +A Z +A Z +A Z +A Y +A X +B Y +A Z +B Z +B Y +C Y +C X +C Y +A Z +B Z +A Z +A Y +B X +C Z +A X +A Z +A Z +A Z +A Y +A Y +A Z +A Y +C X +A Z +A Y +C X +A Z +A Z +C Y +A Z +B Z +A Y +B Z +B X +B Z +C X +A Z +A Z +C X +A Z +A Z +C X +B Z +B Z +B Z +A Z +A Z +B Y +A Z +A Z +C Z +C Z +B Z +A Z +B Y +A Z +A Z +C X +B Z +A Z +A Z +A Z +C Y +B Y +C X +A Z +A Z +A Z +A Y +A Z +C X +A Z +C X +A Z +A Z +C Y +C X +C X +C X +C X +C X +B Z +B Z +B Y +B Y +C Z +A Z +B Z +A Z +A X +A Z +A Z +A Z +C X +A Z +C X +A Z +A Z +C X +C X +B Y +A Z +C Y +A Z +A Y +C Y +B Z +B Y +C X +A Z +C Y +A Z +A Z +A Z +B Y +C X +B Z +B Z +C X +B Y +B Z +A Z +C X +A Z +B Y +B Z +A Y +A Z +A Z +A Z +A Z +C Y +A Z +C Y +A Z +B Y +C X +B Z +A Z +A Z +B Z +C X +B Z +A Z +A Z +A X +B Y +A Z +A Z +A Z +A Z +A Y +B Z +A Z +A Z +A Z +B Z +C Y +C X +C X +B Z +A Z +B Z +C X +A Y +C X +B Y +B Z +C Y +B Y +B Y +A Y +C Y +A Z +A Z +B Z +B Z +A X +A Z +A Z +B Z +A Z +B Z +A X +A Z +A Y +A Y +A Z +B Z +A Z +B Z +A Z +B Z +C X +A Z +A Z +C X +A Z +A Z +A Z +C X +B Y +A X +B Z +B Z +C Y +A Z +A Z +C X +B Y +C X +A Z +A X +A Z +A Z +A Z +A Z +A Z +A Z +A Z +A Z +A Z +C X +B Z +B Z +C X +A Y +C Z +A Y +A Z +C Y +A Z +A Z +A Y +A Z +C X +C Z +A Z +A Y +A Z +A X +A Y +A Z +C X +B Z +A Z +B Z +C Y +C X +A Z +A Z +A X +A Z +B Z +C X +A Z +B Y +A Z +A X +A Z +B Z +A Z +A Z +C X +B Z +B X +A Z +A Z +C Z +A Z +A Z +A Y +B Z +A Z +C X +B Z +A Z +C Y +A Z +B Z +B Z +A Z +A Z +C X +B Z +C Y +A Y +A Y +B Z +A Z +A Z +C Z +B Z +A Y +A Y +C Z +C Z +A Z +B Z +B Y +A Z +B Y +A Z +A Z +A Z +C Y +A Y +A Z +A Z +A Z +A Z +C Z +A Z +B Y +A Z +B Z +C Y +A Z +B Y +B Z +A Z +A Y +A Z +A Z +B Z +A Z +A Z +A Z +C Z +B Z +C X +B Z +A Z +A Z +A Y +A Z +A Z +A Z +A Z +C Y +A Z +A Z +A Z +A X +A Y +B Y +C X +A Z +A Z +B Y +A Z +C X +A Y +A Z +A Z +C X +A X +A Z +A Z +A Z +B Y +B Z +A X +A Z +C X +A Z +C X +B Z +B Y +A Z +B Y +A Y +A Z +A Y +A Z +B Y +C X +B X +B Y +C X +A Z +A Z +A Y +A Z +A Y +B Z +B Y +B Y +A Y +A X +A Z +C X +A Z +B X +A Z +A Z +C X +B Y +B Z +B Z +B Y +B Z +A Y +C X +C Z +A Z +A Y +B Y +B Y +A Z +A Y +C Y +B Y +B Z +A Z +A Y +A Z +B Z +A Z +A Z +A Z +A Z +B Z +A Y +C X +A Z +A Z +B Y +A Z +B Y +B Z +A Z +C X +A Z +C X +B Y +A Z +B Z +C X +A Z +A Z +A Z +C X +C X +A Z +A Z +A Z +B Y +A Z +A Z +A Z +A Z +A Z +A Y +B Z +C Y +A Y +C X +A Z +A Z +B Y +B X +A Z +C Z +A Z +A Y +A Z +A X +A Z +A Z +A Z +C Z +C X +C X +B Y +C X +C X +B Y +C Z +C X +C X +A Y +A Z +C X +C Z +B Y +A Z +C X +C X +A Z +A Z +A Z +A Y +A Z +A Y +B Z +A Z +A Z +A Z +A Z +A Z +A Z +C X +C X +C X +C X +A Z +A Z +B Z +A Y +A Z +A Z +B Z +A Z +A Z +A Z +A Z +A Z +C X +C X +A Z +A Z +C X +C Z +C Z +A Z +A Z +B Y +B Z +A Z +A Z +B Y +B X +C X +B Y +C X +C X +A Z +C X +C X +C Y +C X +C X +C X +B Z +B Z +A Z +A Z +B Z +A Z +C X +A Z +B Y +A Y +A Z +C Z +B Y +B Z +B Z +A Z +C X +B Z +A X +B Y +A Y +B Y +B Z +A Z +A Z +A Z +A Z +A Z +A Z +C X +C X +B Z +A Z +B Y +A Z +B Z +A Z +B Y +A Z +A X +A Z +B Y +B Y +A Y +C X +A Z +A Z +C Y +A Z +A Z +B Z +C Z +B Z +A Z +A Z +C X +C Y +B Z +A Z +C X +A Z +C X +B Y +C X +B Z +A Z +A Z +C X +A Z +C X +A Y +C X +C X +C Y +B Z +C X +B Z +C X +A Z +A Z +C X +A Y +B Z +C X +B Z +C X +A Z +C X +C X +A Z +A Z +B Y +C Z +A X +A X +A Z +C X +A Z +A Z +A Z +A Y +A Z +A Z +A Z +A Z +B Z +C X +B Y +A Z +A Z +B Y +A Z +A Z +A Z +A Z +B Y +A Z +B Z +A Y +A Y +A Y +A Z +A Y +A Z +B Z +A Z +B Y +A Z +C X +A Y +C X +A Z +B Y +A Y +A Z +A Y +A Z +C Z +A Z +B Z +A Z +C X +B Z +A Z +A Z +C X +B Y +A Z +C X +C Y +A Z +B Y +A Z +B X +B Y +B Y +C Z +C X +A Z +C X +A Y +A Y +B Z +A Z +C X +B Z +A Z +A Z +A Y +C X +C X +A Z +A X +B Z +A Z +A Z +A X +A Z +C X +A Z +B Y +A Z +B X +B Y +A Y +C X +A Z +A X +A X +A Y +B Y +A Y +A Z +C X +B Z +A Z +A X +A X +A Z +C X +B Z +C X +B Y +A Z +C X +A Y +A Z +A Z +A Z +A Z +C Z +B Z +C Z +A Z +A Z +C X +B Y +A Y +B Z +C X +B Z +A Z +A Z +A Z +A X +B Y +C X +B Y +B Z +B Z +A Z +A Y +C Y +A Y +A X +A Z +C X +A Z +A Z +A X +A Z +A Z +C X +A Z +A X +A Z +C Y +A Z +B Z +A Y +A Z +C Z +A Y +A Y +B Z +A Y +A Y +A Y +A Z +A Z +A Z +A Z +C X +A Z +A Z +A Z +A Z +A Z +A Z +A X +A Z +A Z +A Z +A Z +A Z +A Y +B Z +A Y +A Z +C X +A X +B Z +A Z +A X +C Y +B Y +B Y +B Z +C X +C X +A Z +A Z +C X +C X +A Z +A X +A Z +A Z +A Z +A X +C X +C X +A Z +A Y +A Z +A Z +A Z +A Z +C Z +A Z +C X +B Z +C Z +C X +A Z +B Y +C X +C X +B Z +C X +B Y +A Y +B X +A Z +A Z +A Z +B Z +C X +A X +B Z +A X +A Z +C Z +B Z +A Z +A Z +C X +C X +A X +C X +C Y +A Z +A Z +A Z +B Z +C Z +A Z +A Z +A Z +A Z +A Z +B Z +A Z +A Z +C X +B Y +A Z +B Z +A Z +C X +A Z +A Z +A Z +B Z +C X +B Y +A Z +A Z +A Z +C Y +A Z +A Z +C X +C X +A Y +B Z +A Z +C Y +C X +A Z +A Z +A Z +C X +A Z +A Z +B Z +B Z +A Z +A Z +A Z +C X +C X +A Z +B Z +A X +B Y +C X +C X +C X +A Z +C X +A Z +A Z +B Y +A Y +B Z +B Z +A Z +A Z +C Z +A Y +A Y +A Z +A Z +C X +C Z +A Z +A Z +A Z +A Z +C Y +B Y +B Y +C Y +A Z +C X +B Z +A X +A Y +B Z +A Z +A Z +A Z +A X +A Z +A Z +A Z +A Y +C Z +A Y +C X +A Y +A X +C X +A Z +B Y +A Y +B Y +A Z +C X +C Z +A Z +C Z +A Y +A Z +A Z +B Z +B X +B Z +B Z +B Y +C Z +C X +A X +C Z +B Z +A Z +A Z +B Z +A Y +A Z +B Y +C X +A Z +B Z +C X +A X +B Z +A Z +A Z +C X +C X +C X +B Z +C Z +A Z +C X +A Z +A Z +A Z +A Z +C Z +C X +A X +B Y +A Z +C X +C Z +A Z +C X +B Z +B Y +A Z +C X +A Z +B Z +C Z +A Z +A Z +A X +B Y +C X +A Z +C X +A Z +A X +C X +A Z +C X +A Y +A Z +C X +C Z +C Y +B Z +B Z +A Y +B Z +A Z +A Z +A Y +A Z +C X +C X +A Z +A Z +C X +B Z +A Z +B Y +A Z +A Z +A Z +C X +A Z +A Y +B Y +A Z +C X +A Z +A X +A Z +A Z +C X +C Y +A Z +C X +A Z +A Y +C X +B Z +C Z +B Y +A Z +A Z +B Y +A Z +B Y +A Z +A Z +A Z +C X +A Y +C X +A Z +C Y +A Z +A Z +A Z +B Y +B Z +B Z +C Z +A X +A Z +A Z +C X +A Z +C X +A Z +A X +C Z +C X +A Z +A Z +A Z +A Z +B Z +A Z +A Z +C Y +A Y +A Z +C Y +C Y +A Z +B Z +A Z +B Z +A Z +B Z +C Y +C X +C X +A Y +A Z +B Z +C X +A X +A Z +A Z +A Y +A Z +A Z +A Z +C X +C X +A Y +A Z +A Z +C X +B Z +B Y +A Y +A Z +B Z +A Z +A Z +A X +A Z +A Z +B Y +A Z +A Y +B Z +C X +A Z +A Z +A Z +C X +A Z +B Z +B Z +A Z +A Z +A Z +A Z +B Z +A Z +A Z +A Z +A Z +C X +C X +A Z +B X +A Z +B Y +C Z +A Z +A Z +A Z +C Z +A Z +B Y +A X +A Z +C Z +A Z +C Z +A Z +C X +A Y +C X +C Z +A Y +A Z +A Z +C X +C X +A Z +A Z +A Z +B Z +B Z +A Y +B Y +C Z +B Z +B X +A Z +A Z +A Z +C X +B Y +A Z +B Z +C X +A Z +A Z +C X +C X +A Z +A Z +A Z +A Z +B Z +A Z +A Z +A Z +A Z +A Z +B Z +A Z +A Z +B Z +A Y +A Z +B Y +A Z +A Z +A Z +B Z +A Z +A Z +C X +B Y +C X +A Y +C X +A Z +A Z +A Z +C X +B Z +A Z +A Z +A Z +A Z +A Z +C X +A Z +A Z +A Z +A Z +A Z +A Y +C X +B Y +C X +A Z +A Z +A Z +A Z +A Z +B Y +A Z +C X +A Z +A Z +A Z +A Z +A Z +A Z +A Z +C X +A Z +C X +A Y +B Z +A Z +C X +A Z +C X +B Z +B Z +A Z +A Z +A Z +C X +A Z +B Z +B Y +C X +C X +C X +B Z +A X +A Y +A Z +A Z +A Z +A Y +A Z +A Z +A Y +A X +A Y +C X +A Y +C X +B Z +B Y +C X +B Y +B Y +C X +A Z +A Z +B Z +C X +A Z +A Z +B Y +A Z +B Y +A Z +A X +C Y +C X +B Z +C X +A Z +A Z +A Z +C X +A Z +C X +A X +A Y +A Z +A Z +C X +A Y +A Z +B X +A Y +A Z +A Z +A Z +A Z +A Z +A Z +C X +A Z +C X +A Z +C Y +A Z +A Z +B Z +A Y +A Z +B Y +B Y +A Z +C X +A Z +C X +C Z +A Z +B Z +B Z +A Z +A Z +C X +C X +B Y +A Z +A Z +B Z +C Z +B Y +B Y +C X +A Z +A Z +B Y +A Z +C X +C Z +A Z +B Z +C X +A Y +C X +A Z +B Y +B Y +A Y +A Z +A Z +A Z +A Z +A Z +A Y +A Z +A Y +A Z +B Y +B Y +B Y +C X +A Z +A Z +A Y +A Z +A Z +C X +A Y +C X +A Z +A Z +A Z +B Y +A Z +A Z +B Z +C X +A Z +B Y +B Y +C X +C Z +B Y +A Z +A Z +A Z +C X +A Z +B Z +C Z +C X +B Y +A Z +A Z +A Y +A X +A Z +A Z +A Z +A Z +A Z +A Y +B Y +A Z +B Z +B Z +A Z +C Y +A X +A Z +A Z +C X +C X +C Y +B Y +B Y +B X +A Z +A Z +B Z +A Z diff --git a/day2/rockpaperscissors b/day2/rockpaperscissors new file mode 100755 index 0000000000000000000000000000000000000000..d3edb4b83994d914ce7f903f3ee6c88a77badc3b GIT binary patch literal 16160 zcmeHOU2GKB6~1d@Fa+>IAQ)(1l|mJQyx3s=5>eLJ3*(9(7wk5PNQd?A+Fs$^b$4eQ zo3^Q2hX~7YN?%$Ys*1FgLVr}zDnigo!ITzo)kY?HA?l0ylkBExjgwR+5#D}h=A2R`|&fJ;3 zyD`lD5R`Jey#R@k0_L}kAFwIt)KP3sR9FrtwoS!Oj!QSA=*T49Db}50o!}UC2uV=l zNim_%7CsI)R+0!w(5-7@og3>cnG&QnC>^+M#QvA|8d&EKnAIpZR$H_Zl=eOk9mVB8 zO>&y|b9>XBhc=GCAct42Yfm(9s$SO~t7uQ8a-9{OTQ*f}st#t;!S!Yrs9ynmXiV+e z+oVv<0C5~fRn%?SQXiEq;&Sp|<6k-Z!s%N-Jow`i)x*EI^o3`C;G0c8)Nj&|4<)Kk zh6ve|pMwwiSn>EKau!E;HU4IjaJoeGFDy{_3b;T4z6M+&|NYbOPfWu zsR~4)cF%zixSe79@S!&TCFy#!GorU7Qjzw=k+{-zoY<(IH6j^9Peu|c)fzXVZIO&h z#*^8&0f$639o@QB&t{{MR10kQMi1-Jw!?Z$B+;%qGKrMYqNo}g4x7}j-SsY^JtVtnaeFp%%(d94HEKMWR@4JF1BC)&UZ1aic}A5 zN^;+l`^CTli$BTtCE>f7FAZ7c!i#-vyT#L(rE?`|*ugu;`G|w(Te>M3bMQD2J54zF zIX0`*Y38X8xi+cztb>=>5kKJI&EE?mk*+v+>$}xSMts}rL?01Mp1r9>-k;jMYF^CjYmL_=U0CfP_|N$e;bvI zk6zE`^T$n_CUoPYS8bana^s^HY?~%tU*z#N$b6#_1qe3Xbe{kR1IqV+x~!F)&%j>uiRcc#$yGlI!oG- zmr!5XnedIWHwOB(pCES~IaC1Rt)9Ou**ausO!haN7srlMy+dopdM13vqth2o=4P2q zygThWG;mX3F15XQ0aO&nRi?C2bX zPAd9nuH%q;;AOU~^)*ezw6%-OfEpzu&!S-PB8A($ZtN?C0^ubu0$v2X2zU|jBH%^9 zi+~paF9Kc!ya+tF5%A$%&+2GkbyTg+(R&l$^5UoH-77sV`p5Elde-j%9tU;$#-PG@^$)s%jeE2J&yki5Kr&$JE8duIn>QEUrnt-mfAV__k8{k zP|f%6oL~OAvWK28?N-~DJ^93jRp#qF(jUa<8vINl`63Z-;4=iC`XY(idKsTPXfI9w zmk7`Izf@E^Z)S0e4_y*B54{L@5%415MZk-I7XdE-UzkEl)tp*p_vC^xQ;A%0HaUr^!Cei{@l4-0%!y zW$h`R%eY+D+`VlTtA`lN85c7OuuPrc^>ecJuah0<`HqsT{aa$0YM2+_2_Ilv`aQsY zvNllKU%|ZieT>ILq7YY;!V65(9^wPVYe6YDmGn4Cnb*1eF57Y(rqloNOV)e4tE}Yn z9b#-?JjB?+=+=FbT^h1HcGcEC8F;*@IhQhWfvT$DhG1nyRn9c4URb|ASXsS>>3?4% zjn^6KPTuWB=Y`g&zRZCOumcU-LjH8#im+1E&+ALsT?LpAx%dst%XK6E^~m_tGUX3h zj9gE&%G#$MQF0wvrAmDb8ERLqL*b8^{)_E(vBJNGOricycU-?Q>sh460#d_$EL6{+ z>Ays|$HiNw>|x~(+}Bg?HaW4yAOUf5;EN`YyGh7FB3ljKua?^J zl+vfbFDzQ1pAqnWjH~jH)L`K;)8B9JqcQ*Yg`)S^-|zCj%l?Brp3VPV!G97w z_0#P?2RFCdtSsz7Yw#0#B$J7B>G712 z=~6A3NHVU+a>-;DBo0f5r!mDfla3zlh;+m=*=Qo0MVsiHuJ7DmvnQ;F_txoHFJJe} z-kLr2wV<(gLJwLm_i|(sLfjUFPjlu4pTP<=&@{CZ;Pa2v}vGzAC$2~ zO3!8EF?43i<^{W&%?cr>;^u6YTQc`P=sLC_NC0VXLct9OQ@2pqmD2H;XG*DHwkv5w znt?{f!ZyiavqU`8p@ONj5f8Sea>0&F8t2jIa!}2=1UA|vVocTSsIQ=bXu7vWvTZ6D z>q?;s3yq9b@)eARL^?Ia&{39&w?|08xsG;21!+L3AhN;MG-tB$s0teKPM9<@;hi>5 zYcSr%W3erU+QhQzum+{2kUW}-BonC2k|V?_h^rxqL0;fO{4Xh*x8W9m-y$oO^Y5mh z%-guw^p!l}r}3e=lIXXvUa*p!97*O!LTy6Esdw)WqyOVOliV+bqu*VpUVirl1LDZ& z)_)QFKQPyl{>yw+P}=8dpgn(;Y9q+dTvYVe`1l1&DY!_~N6O0a%e*lGjwGTV<_-$V zd>1Ze;_AdyUq+7RlA@RSqu?X#Dg75e!52_Yb5pTpek$0&dUyYsR{h9Omqjo0Wx)Y< zl=j`n|2@|4U_Y6E3(9<*^b|9<{#9@k6RF?+{o&ssc`kvAncV09`(T~=0P6$~Su*>Z zi|uA!bLqR;K~Vgq0zf#B0}VqAKu_Pk3k^D04k?h}7^ z{C>}RyO{ucGR|jHz^(ri3Ml@fmwBdOwFnvA`aiq$TEKD?{5k6cWc-Lt^H}O5U$*wV zTlRCh{lyl%18tc@FZ2A96(Ets&$8~@!rwyyja_M9=HIeESN7r3^+!o`a{hk?j^ZbJ zdEPy-j=Ys>v%vlqz2HoUoq82w*Gdbe9jQQcV$X$`IB8$zk$%>@{i!WyTEOkIyImyu zwKijAMDIiyJ5JXSS2(~OdlZEU{dYDv>AO=e8-&BI%B5ZLT`-M4Oh0T$%UlAN Gss0Hry7R;U literal 0 HcmV?d00001 diff --git a/day2/rockpaperscissors.c b/day2/rockpaperscissors.c new file mode 100644 index 0000000..8274a30 --- /dev/null +++ b/day2/rockpaperscissors.c @@ -0,0 +1,30 @@ +#include +#include +#include + +#define BUFFER_SIZE 5 + +#define score_play(p) (p - 'W') +#define win(o, m) (o == m ? 3 : ((o - m == 1 || o - m == -2) ? 0 : 6)) +#define score_game(o, m) (score_play(m) + win((o - 'A'), (m - 'X'))) + +int main() { + char buf[BUFFER_SIZE], *p, c, opponent, me; + memset(buf, 0, BUFFER_SIZE); + p = buf; + unsigned score = 0; + + while ((c = getchar()) != EOF) { + *p++ = c; + if (c == '\n') { + sscanf(buf, "%c %c", &opponent, &me); + score += score_game(opponent, me); + printf("%u\n", score); + + memset(buf, 0, BUFFER_SIZE); + p = buf; + } + } + + printf("%u\n", score); +} diff --git a/day2/rockpaperscissors2 b/day2/rockpaperscissors2 new file mode 100755 index 0000000000000000000000000000000000000000..7de0b1f518a14dd822205a136237847702752eb3 GIT binary patch literal 16160 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 qp9dw*uem>b|D6jQ_ucN#8-$x3!MR +#include +#include + +#define BUFFER_SIZE 5 + +#define score_play(p) (p - 'W') +#define win(o, m) (o == m ? 3 : ((o - m == 1 || o - m == -2) ? 0 : 6)) +#define score_game(o, m) (score_play(m) + win((o - 'A'), (m - 'X'))) +#define win_strategy(o) (o - 'A' + 1 > 2 ? 'X' : o - 'A' + 1 + 'X') +#define lose_strategy(o) (o - 'A' - 1 < 0 ? 'Z' : o - 'A' - 1 + 'X') +#define draw_strategy(o) (o - 'A' + 'X') + +int main() { + char buf[BUFFER_SIZE], *p, c, opponent, result, me; + memset(buf, 0, BUFFER_SIZE); + p = buf; + unsigned score = 0; + + while ((c = getchar()) != EOF) { + *p++ = c; + if (c == '\n') { + sscanf(buf, "%c %c", &opponent, &result); + me = result == 'X' ? lose_strategy(opponent) : (result == 'Y' ? draw_strategy(opponent) : win_strategy(opponent)); + score += score_game(opponent, me); + + memset(buf, 0, BUFFER_SIZE); + p = buf; + } + } + + printf("%u\n", score); +}