From 38874a4973f3cb9eb7908d2e332dde3af5b28a94 Mon Sep 17 00:00:00 2001 From: Oscar Najera Date: Fri, 2 Dec 2022 13:41:31 +0100 Subject: [AoC2022] 01-01 --- AoC2022/01/solver.el | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 AoC2022/01/solver.el (limited to 'AoC2022/01/solver.el') diff --git a/AoC2022/01/solver.el b/AoC2022/01/solver.el new file mode 100644 index 0000000..da7682d --- /dev/null +++ b/AoC2022/01/solver.el @@ -0,0 +1,35 @@ +;;; solver.el --- Solution for AoC 2022 day 1 -*- lexical-binding: t; -*- +;; +;; Copyright (C) 2022 Óscar Nájera +;; +;; Author: Óscar Nájera +;; Maintainer: Óscar Nájera +;; Created: December 02, 2022 +;; Modified: December 02, 2022 +;; Version: 0.0.1 +;; Keywords: abbrev bib c calendar comm convenience data docs emulations extensions faces files frames games hardware help hypermedia i18n internal languages lisp local maint mail matching mouse multimedia news outlines processes terminals tex tools unix vc wp +;; Homepage: https://github.com/titan/solver +;; Package-Requires: ((emacs "25.1")) +;; +;; This file is not part of GNU Emacs. +;; +;;; Commentary: +;; +;; Solution for AoC 2022 day 1 +;; +;;; Code: +(require 'seq) + +;; calculate the maximum from each elves rations +(with-temp-buffer + (insert-file-contents "input") + (apply #'max + (mapcar + (lambda (elf) + (seq-reduce (lambda (acc x) + (+ acc (string-to-number x))) + (split-string elf) 0)) + (split-string (buffer-string) "\n\n")))) + +(provide 'solver) +;;; solver.el ends here -- cgit v1.2.3