Skip to content

Instantly share code, notes, and snippets.

@n7itro
Created April 21, 2024 12:28
Show Gist options
  • Save n7itro/847b5c8c7c1b0eea93ef3e763c1b0c84 to your computer and use it in GitHub Desktop.
Save n7itro/847b5c8c7c1b0eea93ef3e763c1b0c84 to your computer and use it in GitHub Desktop.
Advent of Code 2023 Day 1 - Nim
import strutils, sequtils
var sum = 0
for line in lines "src/input.txt":
let digits = line.filter isDigit
sum += parseInt $digits[0] & $digits[^1]
echo sum
import strutils
var sum = 0
for line in lines "src/input.txt":
var digits = line
for letter in line:
if not isDigit letter:
digits = digits.replace($letter, "")
sum += parseInt $digits[0] & $digits[^1]
echo sum
import strutils, sequtils
func calibrated(line: string): string =
let numbers = ["one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
result = line
for i in 0..len line:
for index, number in pairs numbers:
if number in line[0..<i]:
result = result.replace(number[0..^2], $(index+1))
var sum = 0
for line in lines "src/input.txt":
var digits = (calibrated line).filter isDigit
sum += parseInt $digits[0] & $digits[^1]
echo sum
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment