This commit is contained in:
Aelita4 2022-12-04 15:35:31 +01:00
parent 11d4023e2d
commit 26990dcbf6
Signed by: Aelita4
GPG Key ID: E44490C2025906C1
2 changed files with 1039 additions and 0 deletions

39
day04/index.js Normal file
View File

@ -0,0 +1,39 @@
import { readFileSync } from "fs";
const input = readFileSync("pairs.txt", "utf-8");
const assignments = [];
let pairs, countPairs = 0;
input.split('\n').forEach(pair => {
for(let i = 0; i < 2; i++) {
assignments[i] = [];
for(let j = 0; j < 99; j++) {
assignments[i][j] = ".";
}
}
pairs = pair.split(',');
const betweenOne = pairs[0].split('-').map(x => parseInt(x));
const betweenTwo = pairs[1].split('-').map(x => parseInt(x));
for(let i = betweenOne[0]; i <= betweenOne[1]; i++) {
assignments[0][i - 1] = i;
}
for(let i = betweenTwo[0]; i <= betweenTwo[1]; i++) {
assignments[1][i - 1] = i;
}
let isOneInside = true, isTwoInside = true;
for(let i = 0; i < 99; i++) {
if(assignments[0][i] !== "." && assignments[0][i] !== assignments[1][i]) isOneInside = false;
if(assignments[1][i] !== "." && assignments[0][i] !== assignments[1][i]) isTwoInside = false;
}
if(isOneInside || isTwoInside) countPairs++;
});
console.log(countPairs)

1000
day04/pairs.txt Normal file

File diff suppressed because it is too large Load Diff