Telegram Group & Telegram Channel
Вчера не было сил и времени запариваться с AoC, поэтому я решил его просто двумя кривыми скриптами на питоне.

Однако, сегодня я могу весь день заниматься бесполезной ерундой, поэтому делюсь своим решением для задачи 02p1. Найти его можно тут. Условие и входные данные находятся там же.

Вы можете спросить: "Миш, а почему код такой кринжовый?". А я вам отвечу цитатой:

"Не так важно, как выглядит твой код, важно, во что он компилируется!" (c) Джейсон Стетхем.

В общем, я запарился и написал код, который находит ответ на задачу во время компиляции. То есть решает задачу по сути компилятор, а в рантайме выводится только ответ. Распихал по коду constexpr, заменил циклы на рекурсии и все такое. В итоге получился некрасивый код, который компилируется буквально в следующий код на языке ассемблера (см. скриншот):

printf("answer")

Прикладываю ссылку на godbolt, чтобы можно было убедиться, что я не обманываю:

https://godbolt.org/z/35h8nhx54.

Если считаете, что я сделал тупо и можно было бы добиться того же, только более простыми методами, призываю написать в комменты, буду рад узнать более красивый способ.

Upd. Там у разных людей разные условия.

#advent_of_code

[obsidian]



group-telegram.com/misha_writes_code/157
Create:
Last Update:

Вчера не было сил и времени запариваться с AoC, поэтому я решил его просто двумя кривыми скриптами на питоне.

Однако, сегодня я могу весь день заниматься бесполезной ерундой, поэтому делюсь своим решением для задачи 02p1. Найти его можно тут. Условие и входные данные находятся там же.

Вы можете спросить: "Миш, а почему код такой кринжовый?". А я вам отвечу цитатой:

"Не так важно, как выглядит твой код, важно, во что он компилируется!" (c) Джейсон Стетхем.

В общем, я запарился и написал код, который находит ответ на задачу во время компиляции. То есть решает задачу по сути компилятор, а в рантайме выводится только ответ. Распихал по коду constexpr, заменил циклы на рекурсии и все такое. В итоге получился некрасивый код, который компилируется буквально в следующий код на языке ассемблера (см. скриншот):


printf("answer")

Прикладываю ссылку на godbolt, чтобы можно было убедиться, что я не обманываю:

https://godbolt.org/z/35h8nhx54.

Если считаете, что я сделал тупо и можно было бы добиться того же, только более простыми методами, призываю написать в комменты, буду рад узнать более красивый способ.

Upd. Там у разных людей разные условия.

#advent_of_code

[obsidian]

BY Миша пишет код




Share with your friend now:
group-telegram.com/misha_writes_code/157

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

The Russian invasion of Ukraine has been a driving force in markets for the past few weeks. That hurt tech stocks. For the past few weeks, the 10-year yield has traded between 1.72% and 2%, as traders moved into the bond for safety when Russia headlines were ugly—and out of it when headlines improved. Now, the yield is touching its pandemic-era high. If the yield breaks above that level, that could signal that it’s on a sustainable path higher. Higher long-dated bond yields make future profits less valuable—and many tech companies are valued on the basis of profits forecast for many years in the future. Founder Pavel Durov says tech is meant to set you free The last couple days have exemplified that uncertainty. On Thursday, news emerged that talks in Turkey between the Russia and Ukraine yielded no positive result. But on Friday, Reuters reported that Russian President Vladimir Putin said there had been some “positive shifts” in talks between the two sides. Telegram Messenger Blocks Navalny Bot During Russian Election
from id


Telegram Миша пишет код
FROM American