ToCode
Kanalga Telegramโda oโtish
ืืืคืื ืงืฆืจืื ืืืชืื ืชืื ืืืช ืื ืื ืคืจืง
Ko'proq ko'rsatish1 420
Obunachilar
+124 soatlar
+17 kunlar
-430 kunlar
Postlar arxiv
1 420
ืคืืชืจืื Advent Of Code 2023 ืืื 9 ืืกืงืืื
ืืฉืืืืืื ืจืงืืจืกืื ืื ืชืืื ืืจืืจ ืืื ืฆืจืื ืืช ืืืื ื ืืื, ืืจืื ืคืขืืื ืืืื ืฉืื ืื ื ืื ืกืื ืืคืชืืจ ืืฆืืจื ืจืงืืจืกืืืืช ืฉืืืืช ืฉืื ืืื ืืชืืืืืช ืืืฉืืื ืืจืงืืจืกืืืืช. ืืืงืจื ืฉื ืืื 9 ื Advent Of Code ืืฉื ื ืืืืืฉ ืืื ืฉืืืืช ืืกืืืืืช ืืืืื ืืช ืืช ืืคืืชืจืื ืืจืงืืจืกืืื, ืื ืคืชืจืืช ืืงืืืช ืืืืืชื.
ืืชืจืืื
ืืืฉืืื ืฉืื ื ืืื ืืืฉื ืืช ืืืืืจ ืืื ืืกืืืจื ืืจื ืืืฉืื ืกืืจืช ืืืคืจืฉืื ืฉืื. ื ืืงื ืืืืืื ืืช ืกืืืจืช ืืืกืคืจืื:
1 3 6 10 15 21
ืื ืืคืฉืจ ืืจืฉืื ืืช ืืืคืจืฉ ืืื ืื ืฉื ื ืืกืคืจืื ืืืงืื ืืช ืืกืืืจื:
2 3 4 5 6
ืืืคืฉืจ ืืืืฉืื ืืืจืฉืื ืืช ืืืคืจืฉ ืืื ืื ืืกืคืจ ืืกืืืจืช ืืืคืจืฉืื ืืื ืืงืื ืืช ืืกืืืจื:
1 1 1 1
ืืื ืืืืฉืื ืขืื ืฉืื ืืื ืืงืื:
0 0 0
ืืฉืืืืขืื ืืกืืืจืช ืืืคืกืื ื ืืกืืฃ ืืคืก ืืื, ืืื ื ืฉืชืืฉ ืื ืืื ืืืฉื ืืช ืืืืืจ ืืื ืืกืืืจืช ื-1-ืื (ืืื ืืืื 1), ืืื ื ืฉืชืืฉ ืื ืืื ืืืืืช ืืช ืืืืืจ ืืื ืืกืืืจื ืืฉื ืืื (ืืื ืืืื 7) ืืืขืืจืชื ืืืฆืืื ืืช ืืืกืคืจ ืืืืจืื ืืกืืืจื ืฉืืื ื ืืชืืื ื - ืืื ืืืื 28.
ืคืืชืจืื ืืกืงืืื
ื ืืชืื ืคืื ืงืฆืื ืืกืงืืื ืฉืชืืฉื ืืช ืืืกืคืจ ืืื ืืกืืืจื. ืืคืื ืงืฆืื ืืฉ ืืกื ืืื ืฉืชื ืืคืฉืจืืืืช:
1. ืื ืฉืืื ืืงืืืช ืกืืืจื ืฉืืืื ืืคืกืื, ืืื ืืื ืืืกืืคื ืื ืขืื 0.
2. ืื ืฉืืื ืืงืืืช ืกืืืจื ืืืจืช, ืืื ืืื ืชืืืจ ืืช ืืืืืจ ืืืืจืื ืืกืืืจื ืขื ืืืืืจ ืืืืจืื ืืกืืืจื ืฉืชืชืงืื ืืืคืขืืช ืืืชื ืคืื ืงืฆืื ืขื ืกืืืจืช ืืืคืจืฉืื.
ืืช ืกืืืจืช ืืืคืจืฉืื ืืืฉืืื ืืกืงืืื ืขื ืืฉืืจื ืืืื:
val diffSeries = known.zip(known.tail).map {(i, j) => j - i }
ืืืื ืืคืื ืงืฆืื ืืืื ืชืืื:
def addNextValue(known: List[Long]): List[Long] =
known match
case _ if known.forall(l => l == 0) => known :+ 0
case _ =>
val diffSeries = known.zip(known.tail).map {(i, j) => j - i }
known :+ known.last + addNextValue(diffSeries).last1 420
ืืืืฉ ืฉืืืืง ืืืจืืืช
ืืื ืืื ืืืื ืืจืืื ืฆืจ. ืื ื ืขื ืืืคื ืืื ืืืื ืืกืชืื ืงืืืื, ืืืืืืง ืืฉืืชืืืืชื ืื ืืืืฆืื ืืืืื ืื ืืฉืืื ืืื ืฉื ืืื ืฉื ืื ื ืืขืืืจ ืืื ืืฆืืืข ืขื ืืื ืืฆื ืืื ืื ืฆืื ืืฆื ืืฉื ื. ืืื ืืืฉืื ื ืฆืืืชื ืืื ืฉืืื ืืฆืืืข ืืฉื ืื ื ืืืฉืื ื ืืื ืืืฉืื ืคืขืืืื.
ืืืืฉ ืฉืืืืง ืืืจืืืช ืื ืขืฆืจ ืืฉืืื ืื ืืืชืจ ืื ืืืืื ืื ืื ืืขืฉืืช.
ืืื ืื ืืืืืง ืืืืืื ื ืืฉื, ืื ืืืฉ ืืืืคื ืืืคืืื ืื ื ืจืื ืืืชืจ ืืื ืกืืืืชื.
ืืื ืคืฉืื ืืืื ืืืืืง ืืืื ืืช ืืืื ืืจืก ืืืฉืืชืฃ ืฉื ืฉื ืื ื, ืืกืืืจ ืืฆืืจื ืืืืืงืช ืื ืฆืจืื ืืขืฉืืช ืื ืชื ืืืืื ืืืฉืืช. ืืืืฅ ืืืืกืื ืื ืืื ืืงืืช ืืืจื ืืื ืื ืืืื ืืืชื ืฉืืขืืจ ืืฉืื ืขื ืื ืืืืืช.
1 420
ืืื ืืคืชืืจ ืืขืืืช "ืงืื ืืช"
ืืืื ืืื ืืฉื ืืืฉ ืืื ืืคืืชืจืื ืืขืืืช ืฉืืขืื ืื ืื ืืฉืืืืช. ืื ืื ืื ืื ืืจืื ืฉื ืืขื ืืชืช ืื ืจืขืืื ืืช ืื ืืขืฉืืช ืืฉื ืืจ ืจืืืฃ ืืืจืื ืืืฉ ืื ืืขืื ืืืฉ ืืฉืืื ืืืืืคื. ืืื ืืืื ืฉืื ื ืืืฉ ืืจืืข ืืืืชืืืื ืขื ืืขืืืช "ืงืื ืืช", ืืืงืื ืืช ืื ื ืืชืืืื ืืื ืื ืฉืืื ื ืืืืื ืกืื ืช ืืืื ืืืืืืช. ืืืืืื ืืืจืืช ืื ืืคืฉืจ ืืืืืช ืขื ืืืขืื ืขืื ืืื ืขืืืฃ ืืืืืช ืขื ืืคืืชืจืื ืืืืจ ืืืืชืืงื ืื ืืจ ืฉืจืืืฃ ืืืจืื.
(ืืื ืื ืจืืืฃ ืืืจืื ื ืืจ? ื ื ืชืกืืื ืขื ืืืื ืฉืืื ืฉืืืฆืื ืืกืคืืง ื ืืจืื ืืืืื ืืื ืฉืจืืืคืื ืืืจืืื ืืื ืฉืืฃ ืคืขื ืื ืืืื ืืฉืขืื).
ืืื ืืืช ืืืช ืืกืืืืช ืฉืืืจืืืช ืื ื ืืคืื ืืืชืจ ืืื ืืืจืืฉืื ืืคืืืช ืืื ืืฆืืืื.
ืืืขืื ืฉืื ื ืืื ืฉืืืืื ืืืืืจื ืืื ืืืืืืื ืืชืื ืืช ืืฉ ืืจืื ืืืชืจ ื ืืง ืืืขืืืช ืงืื ืืช ืฉืืฆืืืจืืช. ืงืื ืืื ืืืืื ืืืชืจ ืืจืืข ืืื ืฉืขืืืจ ืืืื ืืื ืื ื ืื ืืชืืืงืื ืืืชื. ืฉืืืงื ืืขืืืื ืชืื ืืชืืจืืฃ ืืื ืฉืื ื ืืคื ืื. ืืจืื ืืืงืฆืืขืืช ืฉืื ื ืืืืืช ืืืชืืจืืจืช ืืื ืฉืื ืื ื ืืื ืืืื ืืืืื ืืืืจืื ืืืฉืื. ืืฉืืื ืืืฆืืื ืืืืจื ืืื ืื ืื ื ืฆืจืืืื ืืืืื ืืื ืืคืชืืจ ืืขืืืช ืงืื ืืช ืืคื ื ืฉืื ืืืคืืืช ืืืืืืืช - ืืืืืจ ืื ืื ื ืจืืฆืื ืืืคืกืืง ืืขืฉื ืืคื ื ืฉื ืงืื ืกืจืื, ืื ืื ื ืจืืฆืื ืืืจืืืื ืืืชืจ ืืขืืืื ืืืื ืืช ืืืืื ืืื ืขืืืื ืืืืื ืืคื ื ืฉื ืืฉืืง ืืืืจื ืืื ืื ื ืจืืฆืื ืืืืฉืืจ ืืืืืช ืืืงืฆืืขืืช ืืคื ื ืฉื ืฆืืืจ ืคืขืจ ืฉืืืื ืงืฉื ืืื ืืกืืืจ ืืืชื.
ืืื ืืื ืจืขืืื ืืช ืฉืืืืืื ืืขืืืจ ืืืชืืืืืืช ืขื ืืขืืืช ืงืื ืืช:
1. ืืคืฉืจ ืืืคืื ืืืืื ื ืืขืืืช ืงืื ืืช ืืืืืืืช - ืื ืงืฆืช ืืคืจืืข ืืื ืฉืืชื ืื ืืจืืืืืื ืืกืคืืง, ืืคืฉืจ ืืจืืช ืืืฆื ืืฉืจื ืืื ืืืฉ ืชืจืืืฉื ืืช ืืืืจ ืืืืก. ืืืืืช ืืฉืขืืช ืชืืจืื ืืชืื ืืืฆืื ืืจืืื ืืืจืืืื ืืืชืจ ืคืจ-ืฉืขื, ืืืืื ืฉืืื ืืฉืื ืืฉืชืฃ ืคืขืืื ืื ืืืขืื ืืืื ืืืจืืฉืช.
2. ืืคืฉืจ ืืฉื ืืช ืคืจืกืคืงืืืื - ืื ืงืฆืช ืืคืจืืข ืืื ืืงืื ืกืจืื ืืขืชืื ืืจืืืง, ืืืื ืชืืื ืฉืืืื ืืคืจืืข ืืื ืืจืื ืืจืข ืืืคื, ืื ืืืืืจ ืืืืื ืฉื ืืคืืกืช ืกืืืจืืืช. ืฉืื ืื ื ืงืืืช ืืืื ืืืื ืืชืช ืื ื ืืช ืืืืืคื ืืฉืื ืื.
3. ืืคืฉืจ ืืืชืืื ืืจืืืื ืืืฉืื - ืืจืื ืื ืฉืื ืืืืืืื ืฉืืืจื ืฉืื ืืชืืืื ืืืชืื ืืืืงืืช ืืืขืจืืช ืื ืืืืืช ืืงืื ืืฉืชืคืจื. ืื ืงืืจื ืืืื ืฉืขื ืขืืฉืื ืื ืฉืืชื ืื ืฉืืงืื ืืืื ืืืืื ืื ืฉืื ืื ืขื ืืื ืื ืืคืจืืข ืื, ืืื ืืฉืฆืจืื ืืืชืื ืืืืงืืช ืืืืืื ืืงืื ืืืคื ืืืขืื ืืืืื.
4. ืืคืฉืจ ืืืงืฉ ืขืืจื - ืืคืขืืื ืืฉืื ืฉื ืจืื ืื ืงืื ืืื ืืฉืื ืืืื ืืืื ืืืคืจืืข ืืืืฉืื ืืืจ. ื ืกื ืืืื ืืก ืืฆืืืช ืื ืฉืื ืฉืืฉืืืืื ืืชืื ืืชืจืื ืืื ืื ืคืืชืจืื ืืช ืืืขืืืช ืืงืื ืืช ืฉืืชื ืฉืืชื ืืฆื.
ืืฉ ืืื ืืจืืงืื ื ืืกืคืื ืฉืขืืืจืื ืืืชืืืื ืขื ืืขืืืช ืงืื ืืช? ืฉืชืคื ืืชืืืืืช ืื ืืืืืจื.
1 420
ืฉืืืืฉ ืืืืืื, ืฉืื ืืฉืจ ืืื ืขืืฉืื ืขื ืืื'ื ืืืจืื?
ืืืจืืช ืคืืชืื ืจืฆืื ืืืช ืืืื ืืคืขืืืืช ืชืืืื ืฉื Code Review ืขื ืงืื ืืืฉ ืฉื ืื ืก ืืืขืจืืช, ืืืจืื ืคืขืืื ืฆืืืชืื ืื ืกื ืืชืืืง ืชืืืื ืืื ืื ืืฉืืื ืืกืคืืง ืื ืืื ืืื ืืขืืืจ ืืื ืขื ืืงืื ืฉื ืืฉื ื. ืืฉืื ืื ืืืืื ืืฉืชื ืชืืฆืืืช ืืจืืขืืช:
1. ืืจืืฉืื ื ืืื ืฉืืืืฉ ืืืืืื ื Best Practices, ืื ืื ืืื ืื ืืื ืืขืืืจ ืขื ืงืื ืืืื ืืืช ืื ื ืขืื ืื ืืืืื ืืืื, ืื ืืชื ืชืขืืจ ืขื ืืืืจืื ืืงืื ืื ืฉืงืืคืฆืื ืืขืื (ืืื ืืื ืฉืชื ืฉืืจืืช ืจืืื ืืคื ื ืืคืื ืงืฆืื? ืืงืืืคืื ื ืื ืืืืช ืขืืฉื ืืืชืจ ืืื ืืื).
2. ืืฉื ืื ืืื ืืืืืืช ืืคืืชืื, ืื ืืืงืื ืืืื ืืก ืงืื ืืืจืืืช ืื ื ืฉืืจ ืื ืื ื ืฆืจืืืื ืืืืืช ืืืขืจืืช ืื ืจืืืื ืืืืช ืฉื ืจืืฉ ืืฆืืืช ืืขืกืืง ืืื.
ืืืืจื ืืื ืืืืจื ืฉื Code Reviews ืืื ืืฉืคืจ ืืช ืืืืืช ืืงืื ืฉื ืืืขืจืืช, ืืืขืืืจ ืื'ืื ืืืจืื ืืืฉืชืคืจ ืืืืืืฉืฃ ืืชืื ืืืช ืคืืชืื ืืืืืช ืืืชืจ. ืื ื ืฉืืืฉ ืฉืืืืช ืฉืฉืืื ืืฉืืื ืืช ืขืฆืื ื ืืืื ืชืืืืื ื Code Review (ืื ืืืืชืืงืื ืืื ืืฆืขืืจืื)-
1. ืืืืื ืชืืืจืืช ืื ื ืืขืืืจ ืื ืืงืื ืืขืจืืช ืฉืฉืื ื ืืช ื Design ืฉื ืืคืืฆ'ืจ ืืฆืืจื ืืฉืืขืืชืืช?
2. ืืืืื ืชืืืจืืช ืื ื ืืขืืืจ ืื ืืงืื ืืขืจืืช ืืงืฉืืจืืช ืืืืืืช ืืืืข ืื ืฉืชืคืกื ืืขืืืช ืืืฆืืขืื ืืฉืืขืืชืืช ืืคื ื ืฉืืืืขื ืืคืจืืืงืฉื?
3. ืืืืื ืชืืืจืืช ืื ื ืืขืืืจ ืื ืืงืื ืืขืจืืช ืฉืืจืื ืื ืืืืื ืคืจืืืืื ืื ืจืขืืื ืืืฉ, ืื ืฉืืจืื ืื ืืจืืืช ืืืจืช ืืช ืืืขืจืืช ืืืช ืชืืืื ืืคืืชืื?
ืื ืชืืืื ื Code Review ืฉืืื ืื ืขืืื ืืื ืืื ืฉืืืืชื ืจืืฆืื ืื ืชืชืืืืฉื ืืฉื ืืช ืืืชื. ืืขืืจ ืืขืืืง ืขื PR ืืื ืืืืืฉ ื ืืชื ืืืชืจ ืขืจื ืืืขืืจ ืืืืฃ ืขื ืฉืืืฉื PR-ืื ืื ืืื.
1 420
ื ืชืืื ืืืจื ืฉืืืื ืืช ืืฉืคื
ืืืช ืืืขืืืืช ืื ืคืืฆืืช ืืืืืื ืืื ืืืืืื ืืชืืืื ืืฉืื ืื ื ืืกืชืืืื ืขื Tech Stack ืืืงืื ืขื ืฉืคื, ืืื ืกืื ืืืืื ืกืืืง ืฉืื ืืืื ืืืช. ืื ืืืื ืื ืืกืืื ืืืืื Node.js ืืื ืขื ืืงืกืคืจืก, ืื ืจืืื ืืื ืขื ืจืืืืก, ืืื ืื ืจืืืงื ืืื ืขื ืจืืืืงืก ื next ื styled components ื TypeScript.
ืืืืืจื ืืฉ ืคื ืืืืื ืืช ืืืจืืืื - ืืืงืื ืืืืื ืงืืื X ืืืจ ืื Y ืืืจ ืื Z ืื ื ืืืื ืืฉืจ ืืช ืืืจื ืื ืืื ื ืืขืฉืืช ืืืจืื, ืืืืจื ืื ืื ืืขื ืืื ืืืชื ืืืชืงืื ืืืื ืืืชืขืืง ืืื ืืื ืืืืืื. ืืคืืขื ืืืฉืืง ืืื ืคืืขื ืืจืขืชื ื ืืืื ืกืืืืช:
1. ืื ืื ื ืืคืชืืื ืชืืืช ืืคืจืืืืืืจืง ืื ืฉืืืื ืื ื ืงืฉื ืืืืืืฃ ืืืงืื ืืื ื.
2. ืื ืื ื ืืชืจืืืื ืืืจื ืืฉืืื ืืกืืืืช, ืืื ืืืืื ืืช ืืคืืื ืฆืืื ืืืืืชื ืฉื ืืืื.
3. ืืืืื ืืื ืืจืืข, ืคืจืืืืืืจืงืื ืืกืชืืจืื ืืืืชื ื ืืช ืืคืจืืื ืฉื "ืืื ืืืจืื ืขืืืืื" ืืืืืืืื ืืช ืืกืืืื ืฉื ืืชืื ืงืื ืื ืืืืื ื.
ืืคื ื ืฉืจืฆืื ืืืืื ืืช ืื ืืกืืืง ื ืกื ืืจืืืช ืฉืืชื ืืฆืืืืื ืืืกืชืืจ ืจืง ืขื ืืืื ืืืืืื ืืืชื ืืชื ืื ืกืื ืืืืื. ืื ืืคืฉืจ ืืืกืชืืจ ืืืฉ ืืื ืขื ืจืืืงื ืื ืืื Redux ื next ืืืืืื ืืืืจืื ืืคื ืืกืืจ ืจืง ืืขืืืจ ืืืืื ืืช ืืงืฉืจืื ืืื ืืื.
1 420
ืืื Exceptions ืฆืจืืืื ืืืืืช ืืืง ืืืืืฉืง?
ื'ืืืื ื ืืกื ืืืขืื ืฉ Exceptions ืื ืืืง ืืืืืฉืง ืฉื ืืคืื ืงืฆืื, ืจืง ืืฉืืื ืืืืืช ืฉืืชืื ืชืื ืืฉืชืืฉืื ืืืชืจ ืืื ื Runtime Exceptions ืืฉืืื ืืื ืื ืืชืขื ืืช ืืืืจืื ืืจืขืื ืฉืืืืืื ืืงืจืืช. ืจืืกื ืื ืกื ืืช ืืืชื ืืฉืืง ืขื ืืืืจื ืืืงืืืช ืฉื ืขืจืื ืฉืืืื ืืกืืื ื ืฉืืื, ืืื ืขืืืื ืืืงืื ืืืืื ืืื ืื ืืืืืจ.
ืืฆื ืืฉื ื ืฉื ืืืคื ืืฉ ืื ื ืืช ืคืืืชืื ืฉืืฆืืื ืช ื PEP484:
> No syntax for listing explicitly raised exceptions is proposed. Currently the only known use case for this feature is documentational, in which case the recommendation is to put this information in a docstring.
ืืื ืืืืืคืกืงืจืืคื ืืื ืืืื ืืื ืกืืคื ืฉื ืืืจ ืืื ืืืืฆื ืืฉืืขืืชืืช.
ืืืขืื ืืืืืื ืฉืื ื ืืื ืฉืืฆื ืืื ืื ืื ื ืื ืจืืฆืื ืืืืจืื ืืฃ ืืื ืืืคื ืืฉืืืืืช (ืื ืืื ืคืจืืืงื ืืฉ ืืจืืฉืืช ืฉืื ืืช), ืืื ืืฆื ืฉื ื ืื ืืจืืืฉ ืื ื ืืื ืืืขืื ืฉืืฉ ืื ื Type Safety ืืฉืืขืฆื ืงืื ืืืื "ืืงืคืืฅ" ืืืงืืืืช ืืืจืื ืืืื ืคืงืืื ืืคืื ืงืฆืื ืคื ืืืืช.
ืื ืืขืชืื? ืืื Exceptions ืฆืจืืืื ืืืืืช ืืืง ืืืืืฉืง? ืืขืืืคืื ืงืื ืฉืืืืืจ ืฉืืืื ืื ืฉืืืจืง Exception, ืืืืืื ืืฆืืื?
1 420
1 420
ืืื Exceptions ืฆืจืืืื ืืืืืช ืืืง ืืืืืฉืง?
ื'ืืืื ื ืืกื ืืืขืื ืฉ Exceptions ืื ืืืง ืืืืืฉืง ืฉื ืืคืื ืงืฆืื, ืจืง ืืฉืืื ืืืืืช ืฉืืชืื ืชืื ืืฉืชืืฉืื ืืืชืจ ืืื ื Runtime Exceptions ืืฉืืื ืืื ืื ืืชืขื ืืช ืืืืจืื ืืจืขืื ืฉืืืืืื ืืงืจืืช. ืจืืกื ืื ืกื ืืช ืืืชื ืืฉืืง ืขื ืืืืจื ืืืงืืืช ืฉื ืขืจืื ืฉืืืื ืืกืืื ื ืฉืืื, ืืื ืขืืืื ืืืงืื ืืืืื ืืื ืื ืืืืืจ.
ืืฆื ืืฉื ื ืฉื ืืืคื ืืฉ ืื ื ืืช ืคืืืชืื ืฉืืฆืืื ืช ื PEP484:
> No syntax for listing explicitly raised exceptions is proposed. Currently the only known use case for this feature is documentational, in which case the recommendation is to put this information in a docstring.
ืืื ืืืืืคืกืงืจืืคื ืืื ืืืื ืืื ืกืืคื ืฉื ืืืจ ืืื ืืืืฆื ืืฉืืขืืชืืช.
ืืืขืื ืืืืืื ืฉืื ื ืืื ืฉืืฆื ืืื ืื ืื ื ืื ืจืืฆืื ืืืืจืื ืืฃ ืืื ืืืคื ืืฉืืืืืช (ืื ืืื ืคืจืืืงื ืืฉ ืืจืืฉืืช ืฉืื ืืช), ืืื ืืฆื ืฉื ื ืื ืืจืืืฉ ืื ื ืืื ืืืขืื ืฉืืฉ ืื ื Type Safety ืืฉืืขืฆื ืงืื ืืืื "ืืงืคืืฅ" ืืืงืืืืช ืืืจืื ืืืื ืคืงืืื ืืคืื ืงืฆืื ืคื ืืืืช.
ืื ืืขืชืื? ืืื Exceptions ืฆืจืืืื ืืืืืช ืืืง ืืืืืฉืง? ืืขืืืคืื ืงืื ืฉืืืืืจ ืฉืืืื ืื ืฉืืืจืง Exception, ืืืืืื ืืฆืืื?
1 420
ืื ืื ืื ื ืืืคืฉืื ืืฉืคืช ืชืื ืืช
ืืืฉืื ืืจืืื ืฉื ืกืงืืื ืืคืื ืคืฆืฆื ืืฉืืืข ืืฉืื "ืืื ืืขืฆื ืืคืกืงืชื ืืืฉืชืืฉ ืืกืงืืื?". ืื ืืขื ืืื ืื ืกืงืืื ืืืืช ื ืืฆืืช ืืืขืืื ืืขืจื ื 2017. ืฉืืืฉ ืืกืืืืช ืืืจืืืืืช ืฉืขืื ืฉื ืื:
1. ืงืฉื ืืืืืก ืื ืฉืื ืืขืืืช ืืคืชืืื ืืืื ืืืืื.
2. ืืงืืกืืกืื ืืคืืฆื ืืื ืืชืืืืง.
3. ืืื ืขืืืื.
ืืืืื ืฉื ืืืงืืกืืกืื ืืกืงืืื ืืื ืืช spark ืืืช play, ืฉื ืืื ืขืืืื ืคืขืืืื ืืืืฉืืื ืืชืื ืชืื ืืื ืืจืื ืคืืืช ืืืขืืจ. ืกืคืืจืง ืขืืื ืืื ืขื ืคืืืชืื ืืืฉืืื ืืคืชื ืืคืืืงืฆืืืช ืืื ืื ืื ื ืืขืืืคืื ืืช ืืืืคืกืงืจืืคื. ืืกืืฃ ืื ืื ื ืจืืฆืื ืืืืืจ ืฉืคื ืฉืืืืื ืืชืช ืชืฉืืื ืืืื ืืฉืืื "ืืื ืืฉืคื ืืืืช ืืืื". ืื ืืืื ืืืืืช ืืืฆืืขืื, ืืืฆืจ ืืื ืื ืชืืื ืืกืืื ืื ืืฉืคื ืฉืืืืช. ืคืืืชืื ืืฉืชืืื ืขื ืชืืื ื ืืชืื ื ืชืื ืื ื AI, ืืืฉื ืืคืื ืืคืืืืืจืืืืช ืฉื ืืจืื ืื ืฉืื. ื'ืืืืืกืงืจืืคื ืืจืืืืื ืื ืืื ืืืชื ืืืืืื ืฉืจืฆื ืืชืื ืืคืืคื ืืฆืืจื ืืืื ืืช. ืจืืื ืืจืืืืื ืืฉืจืืืืก ืืื ืืขื ืืื ื swift ืืืชื ื ืืืื ืืืืืคืื.
ืืืจืืช ืืืขืื ืืืืื ืฉื Python ื JavaScript ืืืืื ืืื, ืืืื ืืืืืจ ืืช ืืืงื ืฉื ืกืงืืื, ืจืืื, ืคืจื ืืฉืคืืช ืจืืืช ื ืืกืคืืช. ืืขืืื ืืฉืชื ื ืืฉืคืืช ืืืฉืืช ืืืืขื. ืืื ืฉืืคืฉืจ ืฉืืื ืืืชืจืื ืืืืืื ืฉืคืืช ืชืื ืืช ืืืฉืืช ืืคืืื ืืชืืจ ืชืืืื, ืืื ืฉืืฉืืืืข ืืืื ืืืฉืคื ืฉืื ื ืชืชืืื ืืืื ืืืื ื ืืื ืืืชืงืื ืืื ืืืจืืืฉ ืชืงืืขืื.
1 420
ืคืืชืจืื ืืื 6 ื Advent Of Code 2023 ืืกืงืืื (ืืื ืงื ืืื ืชืืื)
ืืืจื 5 ืืืื ืืืืืืื, ืืื 6 ืฉื Advent Of Code ืืฉืืืจ ืงืฆืช ืืืืืจ ืื ืฉืืื. ืืืื ื ืฆื ืืืจื ืืืืจืืฅ ืืกืืจืืช ืขื ืกืงืืื.
ืืืชืืจ
ืืืฉืืง ืืืื ืื ืื ื ืืงืืืื ืืืื ืฉื ืืื ืื ืืืจืืงืื:
Time: 7 15 30
Distance: 9 40 200
ืื ืขืืืื ืืชืืจืช ืฉืื ืืืืจืืฅ ืืืืฉืืื ืฉืื ื ืืื ืืืืืจ ืืืืจืืช ืฉืชืืืก ืืช ืืืชื ืฉืื. ืืืจืืง ืืื ืฉืืฉืืื ืืืืืข ืืืืืจืืช ืืกืืืืช ืฆืจืื "ืืืขืื" ืืช ืืกืืจื ืืื ืืืืื ืืื, ืืื ืืืกืืื ืืืืืง ื-2, ืื ืื ื ืืืืจืื ืืื ืฉื ืืืช "ืืืขืื" ืืื ืืืฆืืื ืืืจื ืืืืืจืืช ืฉืฉืืื ืืืกืคืจ ืืฉื ืืืช ืฉืืฉืงืขื ื ืืืขืื ื. ืืืืืื ืื ืืฉืงืขื ื 2 ืืืื ืฉื ืืืช ืืืขืื ื ืืกืืจื ืชืืกืข ืืืืืจืืช 2 ืืืืืืืจ ืืืืื ืฉื ืื. ืืกืืจื ืืืืช ืืฉ ืื ื ืืื ืืคืฉืจืืืืช ืืืืืก ืืช ืืฉืื ืฉื ืืืืจืืฅ ืืจืืฉืื:
1. ืื ื ืืขื ืืืฉื 2 ืืืื ืฉื ืืืช ืืืื ืื ื ืขืื 5 ืืืื ืฉื ืืืช ืื ืกืืข ืืืืืจืืช 2, ืื ืขืืืจ ืืจืืง ืฉื 10 ืืืืืืืจ (ืืืื ืืืืจืืง ืืืืื).
2. ืื ื ืืขื ืืืฉื 3 ืืืื ืฉื ืืืช ืืืื ืื ื ืขืื 4 ืืืื ืฉื ืืืช ืื ืกืืข ืื ืขืืืจ 12 ืืืืืืืจ.
3. ืื ื ืืขื ืืืฉื 4 ืืืื ืฉื ืืืช ืืืื ืื ื ืขืื 3 ืืืื ืฉื ืืืช ืื ืกืืข ืื ืขืืืจ ืฉืื 12 ืืืืืืืจ.
4. ืื ื ืืขื ืืืฉื 5 ืืืื ืฉื ืืืช ืืืื ืื ื ืขืื 2 ืืืื ืฉื ืืืช ืื ืกืืข ืื ืขืืืจ 10 ืืืืืืืจ.
ืืืืจืืฅ ืืฉื ื ืืฉ 8 ืืจืืื ืื ืฆื ืืืฉืืืฉื 9 ืืจืืื ืื ืฆื, ืืืืฉืืื ืืื ืืืคืื ืืช ืืกืคืจ ืืืจืืื ืื ืฆื ืืื ืืืจืืฅ. ืืืืืื ืืงืืืื 288.
ืคืืชืจืื ืืขืืจืช ืืืฉืื
ืืกืืื ืฉืืื 6 ืืื ืื ืื ืงื ืืื ืฉืืคืฉืจ ืืืฉื ืืงืืืช ืืช ืืกืคืจ ืืืจืืื ืื ืฆื ืืื ืืืจืืฅ. ืื ื ืกืื ืืช ืืื ืืืขืื ื ื x ืืืช ืืื ืืืืจืืฅ ื t ืื ืืืจืืง ืฉื ืขืืืจ ืืืื:
(t-x) * x
ืืื ืื ืื ืฉืฆืจืื ืื ืืืฆืื ืืชื ืืืจืืง ืืื ืืืื ืืืชืจ ืืืืจืืง ืฉืืืืื. ืื ื ืกืื ืืช ืืืจืืง ืฉืืืืื ื d ืืฉ ืื ื ืืฉืืืื:
(t-x) * x > d
ืื ืฉืืจ ืื ื ืจืง ืืคืชืืจ ืืช ืืืฉืืืื ืืืืฆืื ืืช ืื ืืืกืคืจืื ืืฉืืืื ืืืืื ืืื ืฉื ื ืืคืืชืจืื ืืช. ืงืื? ืืจืืจ:
import Math.{sqrt, pow, max, min}
import scala.io.Source
import scala.util.chaining.*
object aoc2023day6 {
val demoInput: String = """Time: 7 15 30
|Distance: 9 40 200""".stripMargin
private def parseInput(input: Source): List[(Long, Long)] =
input.getLines().toList match
case List(times, distances) =>
val timesValues = """\b(\d+)\b""".r.findAllIn(times).toList.map(_.toLong)
val distanceValues = """\b(\d+)\b""".r.findAllIn(distances).toList.map(_.toLong)
timesValues.zip(distanceValues)
private def waysToWin(time: Long, distance: Long): Long =
val x1 = ((time + sqrt(pow(time, 2) - 4 * distance)) / 2)
val x2 = ((time - sqrt(pow(time, 2) - 4 * distance)) / 2)
val start = min(x1, x2).floor + 1
val end = max(x1, x2).ceil - 1
(end - start + 1).toLong
@main
def day6_part1(): Unit =
println(parseInput(Source.fromResource("day6.txt"))
.map(waysToWin)
.product)
}
ืืืื ืืคืืืก ืืืืื ืฉื ืกืงืืื ืืื ืืื ืืคืื ืงืฆืื product ืฉืืืืืจื ืืช ืืืคืืช ืื ืืืืืจืื ืืจืฉืืื.
ืืืง 2
ืืืืง ืืฉื ื ืฉื ืืชืจืืื ืื ืื ื ืฆืจืืืื ืืืืืื ืฉืืฉ ืจืง ืืจืืฅ ืืื - ืคืฉืื ืืืืงืื ืืช ืื ืืจืืืืื ืืืืื ืืืงืืืื ืขืืืื ืืืช, ืืื ืฆืจืื ืืืฉื ืืื ืืจืืื ืืฉ ืื ืฆื ืืืืชื ืืืจืืฅ ืืืื.
ืืืืช ืฉืืืืื ืช ืงืื ืืขื ืืืื ืืฉืชื ื, ืืืื ืจืง ืคืืขื ืื ืืงืื. ืืืช ืืคืื ืงืฆืื ืฉืืคืขื ืืช ืืช ืืงืื ืืืืง ืืฉื ื:
private def parseInputPart2(input: Source): (Long, Long) =
input.getLines().toList match
case List(times, distances) =>
val timesValues = times.replaceAll("\\s", "").substring(5).toLong
val distanceValues = distances.replaceAll("\\s", "").substring(9).toLong
(timesValues, distanceValues)
ืืฉืืืืฉ ื substring ืืืจืื ืืช ืืืงืกื ืืชืืืืช ืืฉืืจื (ืืืืืื Time ื Distance). ืืื ืืคืฉืจ ืืื ืืื ืืช ืฉื ืืืืื ืจืืืืืจื ืืืชืจ ืื ืจื ืืื ืืืงืฉืจ ืฉื ืืชืจืืื ืื ืืื ืืจืื ืืขื.
Endi mavjud! Telegram Tadqiqoti 2025 โ yilning asosiy insaytlari 
