Compare commits
No commits in common. 'c1ff5f7242c0fd8b4baac50bb8926041e5c52da0' and 'c29d6d937b4cb52ddafab6518c590fde67b3c4a0' have entirely different histories.
c1ff5f7242
...
c29d6d937b
5 changed files with 4 additions and 122 deletions
@ -1,91 +0,0 @@ |
|||||||
<?php |
|
||||||
|
|
||||||
final class Day2 extends Day { |
|
||||||
|
|
||||||
function part1(): string { |
|
||||||
$safeCount = 0; |
|
||||||
|
|
||||||
foreach ($this->input as $line){ |
|
||||||
$levels = array_map('intval', explode(' ', $line)); |
|
||||||
|
|
||||||
$isSafe = true; |
|
||||||
|
|
||||||
|
|
||||||
$direction = null; |
|
||||||
for ($i = 0; $i < count($levels) - 1; $i++){ |
|
||||||
$levelNow = $levels[$i]; |
|
||||||
$levelThen = $levels[$i + 1]; |
|
||||||
|
|
||||||
$change = abs($levelThen - $levelNow); |
|
||||||
if ($change < 1 || $change > 3){ |
|
||||||
$isSafe = false; |
|
||||||
break; |
|
||||||
} |
|
||||||
|
|
||||||
if ($direction === null){ |
|
||||||
$direction = $levelThen > $levelNow; |
|
||||||
} |
|
||||||
|
|
||||||
if ($direction !== ($levelThen > $levelNow)){ |
|
||||||
$isSafe = false; |
|
||||||
break; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
if ($isSafe) |
|
||||||
$safeCount++; |
|
||||||
} |
|
||||||
|
|
||||||
return strval($safeCount); |
|
||||||
} |
|
||||||
|
|
||||||
function part2(): string { |
|
||||||
$safeCount = 0; |
|
||||||
|
|
||||||
foreach ($this->input as $line){ |
|
||||||
$levels = array_map('intval', explode(' ', $line)); |
|
||||||
|
|
||||||
$isSafe = false; |
|
||||||
|
|
||||||
for ($removeLevelIndex = -1; $removeLevelIndex < count($levels); $removeLevelIndex++){ |
|
||||||
$localLevels = $levels; |
|
||||||
if ($removeLevelIndex > -1){ |
|
||||||
array_splice($localLevels, $removeLevelIndex, 1); |
|
||||||
} |
|
||||||
|
|
||||||
$levelSetIsSafe = true; |
|
||||||
$direction = null; |
|
||||||
for ($i = 0; $i < count($localLevels) - 1; $i++){ |
|
||||||
$levelNow = $localLevels[$i]; |
|
||||||
$levelThen = $localLevels[$i + 1]; |
|
||||||
|
|
||||||
$change = abs($levelThen - $levelNow); |
|
||||||
if ($change < 1 || $change > 3){ |
|
||||||
$levelSetIsSafe = false; |
|
||||||
break; |
|
||||||
} |
|
||||||
|
|
||||||
if ($direction === null){ |
|
||||||
$direction = $levelThen > $levelNow; |
|
||||||
} |
|
||||||
|
|
||||||
if ($direction !== ($levelThen > $levelNow)){ |
|
||||||
$levelSetIsSafe = false; |
|
||||||
break; |
|
||||||
} |
|
||||||
} |
|
||||||
if ($levelSetIsSafe){ |
|
||||||
$isSafe = true; |
|
||||||
break; |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
if ($isSafe) |
|
||||||
$safeCount++; |
|
||||||
|
|
||||||
|
|
||||||
} |
|
||||||
|
|
||||||
return strval($safeCount); |
|
||||||
} |
|
||||||
} |
|
@ -1,11 +0,0 @@ |
|||||||
for (let i = 1; i <= 25; i++){ |
|
||||||
let buttons = document.querySelectorAll(`#day-${i} > button`); |
|
||||||
|
|
||||||
buttons.forEach(button => { |
|
||||||
button.addEventListener('click', async () => { |
|
||||||
const response = await (await fetch(button.dataset['url'])).json(); |
|
||||||
|
|
||||||
document.getElementById('response').innerText = response.result; |
|
||||||
}); |
|
||||||
}); |
|
||||||
} |
|
Loading…
Reference in new issue