mirror of
https://github.com/Aviortheking/advent-of-code.git
synced 2025-07-31 07:50:47 +00:00
1000
2021/day-2/input.txt
Normal file
1000
2021/day-2/input.txt
Normal file
File diff suppressed because it is too large
Load Diff
26
2021/day-2/part-1.ts
Normal file
26
2021/day-2/part-1.ts
Normal file
@@ -0,0 +1,26 @@
|
||||
import fs from 'fs'
|
||||
|
||||
const input = fs.readFileSync(__dirname + '/input.txt').toString()
|
||||
.split('\n')
|
||||
|
||||
var x = 0
|
||||
var y = 0
|
||||
for (const line of input) {
|
||||
const splitted = line.split(' ')
|
||||
const action = splitted[0]
|
||||
const value = parseInt(splitted[1])
|
||||
|
||||
switch (action) {
|
||||
case 'forward':
|
||||
x += value
|
||||
break
|
||||
case 'up':
|
||||
y -= value
|
||||
break
|
||||
case 'down':
|
||||
y += value
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
console.log(`Result: ${x * y}`)
|
28
2021/day-2/part-2.ts
Normal file
28
2021/day-2/part-2.ts
Normal file
@@ -0,0 +1,28 @@
|
||||
import fs from 'fs'
|
||||
|
||||
const input = fs.readFileSync(__dirname + '/input.txt').toString()
|
||||
.split('\n')
|
||||
|
||||
var positionX = 0
|
||||
var depth = 0
|
||||
var aim = 0
|
||||
for (const line of input) {
|
||||
const splitted = line.split(' ')
|
||||
const action = splitted[0]
|
||||
const value = parseInt(splitted[1])
|
||||
|
||||
switch (action) {
|
||||
case 'forward':
|
||||
positionX += value
|
||||
depth += aim * value
|
||||
break
|
||||
case 'up':
|
||||
aim -= value
|
||||
break
|
||||
case 'down':
|
||||
aim += value
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
console.log(`Result: ${positionX} * ${depth} = ${positionX * depth}`)
|
Reference in New Issue
Block a user