const sample1 = "mjqjpqmgbljsphdztnvjfqwrcgsmlb"; const sample2 = "bvwbjplbgvbhsrlpgdmjqwftvncz"; const sample3 = "nppdvjthqldpwncqszvftbrmjlhg"; const sample4 = "nznrnfrfntjfmvfwmzdfjlvtqnbhcprsg"; const sample5 = "zcfzfwzzqfrljwzlrfnpqdbhtmscgvjw"; const input = await Deno.readTextFile("input.txt"); const solvePart1 = (data: string): number => { const characters = data.split(""); const size = 4; for (let i = 0; i < characters.length; i += 1) { const s = new Set(characters.slice(i, i + size)); if (s.size === size) { return s.size + i; } } return -1; }; console.log("Sample1:", solvePart1(sample1)); console.log("Sample2:", solvePart1(sample2)); console.log("Sample3:", solvePart1(sample3)); console.log("Sample4:", solvePart1(sample4)); console.log("Sample5:", solvePart1(sample5)); console.log("Input", solvePart1(input)); const sample6 = "mjqjpqmgbljsphdztnvjfqwrcgsmlb"; const sample7 = "bvwbjplbgvbhsrlpgdmjqwftvncz"; const sample8 = "nppdvjthqldpwncqszvftbrmjlhg"; const sample9 = "nznrnfrfntjfmvfwmzdfjlvtqnbhcprsg"; const sample10 = "zcfzfwzzqfrljwzlrfnpqdbhtmscgvjw"; const solvePart2 = (data: string): number => { const characters = data.split(""); const size = 14; for (let i = 0; i < characters.length; i += 1) { const s = new Set(characters.slice(i, i + size)); if (s.size === size) { return s.size + i; } } return -1; }; console.log("Sample6:", solvePart2(sample6)); console.log("Sample7:", solvePart2(sample7)); console.log("Sample8:", solvePart2(sample8)); console.log("Sample9:", solvePart2(sample9)); console.log("Sample10:", solvePart2(sample10)); console.log("Input", solvePart2(input));