Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Advent of Code 2024 Day 1 in PowerShell
- # Slower code.
- # Edit the path to the input text file
- # save as slower.ps1
- # run from powershell
- measure-command {
- $FileLines = Get-Content -Path C:\path\to\day1-input.txt
- $Col1 = @()
- $Col2 = @()
- $FileLines | foreach {
- $num1, $num2 = -split $_
- $Col1 += [int]$num1
- $Col2 += [int]$num2
- }
- [array]::Sort($Col1)
- [array]::Sort($Col2)
- # part 1
- $distances = for ($i=0; $i-lt $Col1.Count; $i++) {
- $num1 = $Col1[$i]
- $num2 = $Col2[$i]
- [math]::Abs($num1 - $num2)
- }
- $Part1Sum = $distances | measure -sum |% sum
- # part 2
- $nums = foreach ($num in $Col1) {
- $num * ($Col2 -eq $num).Count
- }
- $Part2Sum = $nums | measure -sum |% sum
- } | foreach { "$($_.Milliseconds) milliseconds" }
- "Part 1: $Part1Sum"
- "Part 2: $Part2Sum"
Advertisement
Add Comment
Please, Sign In to add comment