mirror of
https://github.com/chylex/Advent-of-Code.git
synced 2025-08-16 05:31:42 +02:00
20 lines
554 B
SQL
20 lines
554 B
SQL
CALL aoc_text_file('01');
|
|
|
|
CREATE TABLE "01.characters" AS
|
|
SELECT r.row - 1 AS index, r.character
|
|
FROM "01.input"
|
|
CROSS JOIN REGEXP_SPLIT_TO_TABLE(input, '') WITH ORDINALITY AS r(character, row);
|
|
|
|
CREATE UNIQUE INDEX "01.characters.index" ON "01.characters" (index);
|
|
|
|
UPDATE "01.output"
|
|
SET result = (
|
|
SELECT SUM(a.character::INTEGER) AS result
|
|
FROM "01.characters" a
|
|
INNER JOIN "01.characters" b ON a.index = (b.index + 1) % (SELECT MAX(index) + 1 FROM "01.characters")
|
|
WHERE a.character = b.character
|
|
)
|
|
WHERE part = 1;
|
|
|
|
SELECT aoc_results('01')
|