From 190f522242b2e91eb3213e828a26886aa7847f3a Mon Sep 17 00:00:00 2001 From: Julian Hurst Date: Tue, 3 Dec 2024 18:47:51 +0100 Subject: Refactor and add tests Folders need to have 'sensible' names for hare test to detect them. --- 1/1.ha | 49 ------------------------------------------------- 1/in | 6 ------ 2 files changed, 55 deletions(-) delete mode 100644 1/1.ha delete mode 100644 1/in (limited to '1') diff --git a/1/1.ha b/1/1.ha deleted file mode 100644 index a6a5d94..0000000 --- a/1/1.ha +++ /dev/null @@ -1,49 +0,0 @@ -use fmt; -use bufio; -use os; -use shlex; -use strings; -use strconv; -use sort; -use sort::cmp; - -export fn main() void = { - const sc = bufio::newscanner(os::stdin); - defer bufio::finish(&sc); - - let l1: []int = []; - let l2: []int = []; - defer free(l1); - defer free(l2); - for (const line => bufio::scan_line(&sc)!) { - const tok = strings::tokenize(line, " "); - let isfirst = true; - for (const t => strings::next_token(&tok)) { - if (t == "") { - continue; - }; - const x = strconv::stoi(t)!; - if (isfirst) { - append(l1, x); - isfirst = false; - } else { - append(l2, x); - }; - }; - }; - sort::sort(l1, size(int), &cmp::ints); - sort::sort(l2, size(int), &cmp::ints); - let sum = 0; - for (let i = 0z; i < len(l1); i += 1) { - const l = l1[i]; - const j = l2[i]; - const diff = if (l > j) { - yield (l, j, l - j); - } else { - yield (j, l, j - l); - }; - fmt::printfln("{} - {} = {}", diff.0, diff.1, diff.2)!; - sum += diff.2; - }; - fmt::println(sum)!; -}; diff --git a/1/in b/1/in deleted file mode 100644 index f0aa1c6..0000000 --- a/1/in +++ /dev/null @@ -1,6 +0,0 @@ -3 4 -4 3 -2 5 -1 3 -3 9 -3 3 -- cgit v1.2.3