Advent of Code 2021

https://adventofcode.com/2021

又是一年一度的 aoc 了,看还没有人水这个链接。

1 个赞

传送门

https://emacs-china.org/t/aoc-2019

https://emacs-china.org/t/advent-of-code-2018

第一題用 APL 写(

Part1: +/2</vec

Part2: +/2</3+/vec

1 个赞

第二題,part1 略,part2 我用 CL

(defun number (s)
  (let ((c (aref s (1- (length s)))))
    (- (char-int c) 48)))

(with-open-file (o "input.txt" :direction :input)
  (let ((aim 0)
        (hoz 0)
        (dep 0)
        line)
    (loop while (setf line (read-line o nil nil))
          do  (case (aref line 0)
                (#\d (incf aim (number line)))
                (#\u (decf aim (number line)))
                (t
                 (incf hoz (number line))
                 (incf dep (* aim (number line))))))
    (* hoz dep)))

題目太简单全是拼手速,这次守着題目出來只拿了 200 名开外了。

本来以为今天的会比较难就没太在意,结果看了下原来特別简单,本來是可以拿名次的了。

Part 2 的解

⌊/+/(2÷⍨(1∘+×⊢))|(⍳∘(⌈/)∘.-⊢)data
1 个赞