27 lines
443 B
JavaScript
27 lines
443 B
JavaScript
import { readFileSync } from "fs";
|
|
|
|
const input = readFileSync("datastream.txt", "utf-8");
|
|
|
|
function checkForDuplicates(arr) {
|
|
const map = new Map();
|
|
|
|
arr.forEach(char => {
|
|
map.set(char, true);
|
|
});
|
|
|
|
return map.size === 4;
|
|
}
|
|
|
|
const arr = ['', '', '', ''];
|
|
let i = 1;
|
|
|
|
for(const char of input) {
|
|
arr.shift()
|
|
arr.push(char);
|
|
|
|
if(i > 4 && checkForDuplicates(arr)) break;
|
|
|
|
i++;
|
|
}
|
|
|
|
console.log(i); |