initial upload
This commit is contained in:
6
2024/02/example.txt
Normal file
6
2024/02/example.txt
Normal file
@ -0,0 +1,6 @@
|
||||
7 6 4 2 1
|
||||
1 2 7 8 9
|
||||
9 7 6 2 1
|
||||
1 3 2 4 5
|
||||
8 6 4 4 1
|
||||
1 3 6 7 9
|
54
2024/02/index.js
Normal file
54
2024/02/index.js
Normal file
@ -0,0 +1,54 @@
|
||||
import fs from 'node:fs'
|
||||
|
||||
const report = []
|
||||
|
||||
|
||||
fs.readFile('example.txt', ({ encoding: "utf-8" }), (err, data) => {
|
||||
//console.log(data)
|
||||
|
||||
// rows = reports
|
||||
const crit = 3
|
||||
let safe_reports = 0
|
||||
for (let line of data.split('\n')) {
|
||||
// line.split(' ') == levels
|
||||
|
||||
let levels = line.split(' ')
|
||||
let safe = true
|
||||
let safe_text = ""
|
||||
//let sho = (parseInt(levels[0]) > parseInt(levels[1])) ? true : false
|
||||
let shouldIncrease = (parseInt(levels[0]) < parseInt(levels[1])) ? true : false
|
||||
let safe_level = 0
|
||||
for (let i = 1; i < levels.length; i++) {
|
||||
let difference = Math.abs(parseInt(levels[i]) - parseInt(levels[i - 1]))
|
||||
let isIncreasing = parseInt(levels[i]) > parseInt(levels[i - 1]) ? true : false
|
||||
if (!shouldIncrease && isIncreasing) {
|
||||
safe = false
|
||||
safe_level += 1
|
||||
safe_text += " should decrease "
|
||||
}
|
||||
if (shouldIncrease && !isIncreasing) {
|
||||
safe = false
|
||||
safe_level += 1
|
||||
safe_text += " should increase "
|
||||
}
|
||||
if (difference > crit) {
|
||||
safe = false
|
||||
safe_level += 1
|
||||
safe_text += ` too much difference (${difference})`
|
||||
}
|
||||
if (difference < 1) {
|
||||
safe = false
|
||||
safe_level += 1
|
||||
safe_text += ` too little difference (${difference})`
|
||||
}
|
||||
}
|
||||
if (safe || safe_level === 1) { safe_reports += 1 }
|
||||
console.log(`safe reports so far: ${safe_reports} - ${shouldIncrease ? 'Increasing' : 'Decreasing'} - ${safe_level} - ${levels.join(" ")} - ${safe_text}`)
|
||||
|
||||
|
||||
// for (let i = 0; i < levels.length; i++) {
|
||||
|
||||
// }
|
||||
}
|
||||
|
||||
})
|
1000
2024/02/input.txt
Normal file
1000
2024/02/input.txt
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user