Musings from the mountains himwant.org

Update Favicon

+16 -11
+2 -9
public/favicon.svg
··· 1 - <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 128 128"> 2 - <path d="M50.4 78.5a75.1 75.1 0 0 0-28.5 6.9l24.2-65.7c.7-2 1.9-3.2 3.4-3.2h29c1.5 0 2.7 1.2 3.4 3.2l24.2 65.7s-11.6-7-28.5-7L67 45.5c-.4-1.7-1.6-2.8-2.9-2.8-1.3 0-2.5 1.1-2.9 2.7L50.4 78.5Zm-1.1 28.2Zm-4.2-20.2c-2 6.6-.6 15.8 4.2 20.2a17.5 17.5 0 0 1 .2-.7 5.5 5.5 0 0 1 5.7-4.5c2.8.1 4.3 1.5 4.7 4.7.2 1.1.2 2.3.2 3.5v.4c0 2.7.7 5.2 2.2 7.4a13 13 0 0 0 5.7 4.9v-.3l-.2-.3c-1.8-5.6-.5-9.5 4.4-12.8l1.5-1a73 73 0 0 0 3.2-2.2 16 16 0 0 0 6.8-11.4c.3-2 .1-4-.6-6l-.8.6-1.6 1a37 37 0 0 1-22.4 2.7c-5-.7-9.7-2-13.2-6.2Z" /> 3 - <style> 4 - path { fill: #000; } 5 - @media (prefers-color-scheme: dark) { 6 - path { fill: #FFF; } 7 - } 8 - </style> 9 - </svg> 1 + <?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools --> 2 + <svg width="800px" height="800px" viewBox="0 0 24 24" id="Flat_Color" data-name="Flat Color" xmlns="http://www.w3.org/2000/svg"><path id="primary" d="M21.89,17.55,16.13,6.18h0a2.09,2.09,0,0,0-3.76,0L10.5,9.86,9.87,8.49a2,2,0,0,0-1.8-1.2h0A2,2,0,0,0,6.25,8.48l-4.16,9.1a1,1,0,0,0,.07,1A1,1,0,0,0,3,19H21a1,1,0,0,0,.89-1.45Z" style="fill:#000000"></path></svg>
+7 -1
src/content/aoc/2025/01.md
··· 126 126 let amp = amp % 100; 127 127 ``` 128 128 129 - And easy way to detect a crossing is to check if the difference in `curr` and `prev` is opposite to what we expected. For example, let's say dial position is at `5` and we get input `L10`, as the `dir` is `L`, the dial position should decrease, that is, `curr` < `prev`, but as the `amp` was 10, the new dial position becomes `95`. Now, `curr` (95) > `prev` (5). Detecting for this, and similarly `curr` < `prev` for `R`, we can get if there was a crossing on this move! One thing we need to keep in mind is to ignore those where either `curr` or `prev` were 0, as they would have been already counted by `tot`! 129 + An easy way to detect a crossing is to check if the difference in `curr` and `prev` is opposite to what we expected. 130 + 131 + For example, let's say dial position is at `5` and we get input `L10`, as the `dir` is `L`, the dial position should decrease, that is, `curr` < `prev`, but as the `amp` was 10, the new dial position becomes `95`. Now, `curr` (95) > `prev` (5). 132 + 133 + Detecting for this, and similarly `curr` < `prev` for `R`, we can check if there was a crossing on this move! 134 + 135 + One thing we need to keep in mind is to ignore those where either `curr` or `prev` were 0, as they would have been already counted by `tot`! 130 136 131 137 :::duck 132 138 Also, do remember to set `prev = curr` at the end, you don't want to know how much time I spent debugging this!
+7 -1
src/content/aoc/2025/01.org
··· 91 91 let amp = amp % 100; 92 92 #+end_src 93 93 94 - And easy way to detect a crossing is to check if the difference in =curr= and =prev= is opposite to what we expected. For example, let's say dial position is at =5= and we get input =L10=, as the =dir= is =L=, the dial position should decrease, that is, =curr= < =prev=, but as the =amp= was 10, the new dial position becomes =95=. Now, =curr= (95) > =prev= (5). Detecting for this, and similarly =curr= < =prev= for =R=, we can get if there was a crossing on this move! One thing we need to keep in mind is to ignore those where either =curr= or =prev= were 0, as they would have been already counted by =tot=! 94 + An easy way to detect a crossing is to check if the difference in =curr= and =prev= is opposite to what we expected. 95 + 96 + For example, let's say dial position is at =5= and we get input =L10=, as the =dir= is =L=, the dial position should decrease, that is, =curr= < =prev=, but as the =amp= was 10, the new dial position becomes =95=. Now, =curr= (95) > =prev= (5). 97 + 98 + Detecting for this, and similarly =curr= < =prev= for =R=, we can check if there was a crossing on this move! 99 + 100 + One thing we need to keep in mind is to ignore those where either =curr= or =prev= were 0, as they would have been already counted by =tot=! 95 101 96 102 :::duck 97 103 Also, do remember to set =prev = curr= at the end, you don't want to know how much time I spent debugging this!