mirror of
https://github.com/rjNemo/advent_of_code_2022
synced 2026-06-06 02:26:41 +00:00
day1 part 1
This commit is contained in:
commit
58d1088518
8 changed files with 2433 additions and 0 deletions
92
.gitignore
vendored
Normal file
92
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
.DS_Store
|
||||
.AppleDouble
|
||||
.LSOverride
|
||||
Icon
|
||||
._*
|
||||
.DocumentRevisions-V100
|
||||
.fseventsd
|
||||
.Spotlight-V100
|
||||
.TemporaryItems
|
||||
.Trashes
|
||||
.VolumeIcon.icns
|
||||
.com.apple.timemachine.donotpresent
|
||||
.AppleDB
|
||||
.AppleDesktop
|
||||
Network Trash Folder
|
||||
Temporary Items
|
||||
.apdisk
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
*$py.class
|
||||
*.so
|
||||
.Python
|
||||
build/
|
||||
develop-eggs/
|
||||
dist/
|
||||
downloads/
|
||||
eggs/
|
||||
.eggs/
|
||||
lib/
|
||||
lib64/
|
||||
parts/
|
||||
sdist/
|
||||
var/
|
||||
wheels/
|
||||
share/python-wheels/
|
||||
*.egg-info/
|
||||
.installed.cfg
|
||||
*.egg
|
||||
MANIFEST
|
||||
*.manifest
|
||||
*.spec
|
||||
pip-log.txt
|
||||
pip-delete-this-directory.txt
|
||||
htmlcov/
|
||||
.tox/
|
||||
.nox/
|
||||
.coverage
|
||||
.coverage.*
|
||||
.cache
|
||||
nosetests.xml
|
||||
coverage.xml
|
||||
*.cover
|
||||
*.py,cover
|
||||
.hypothesis/
|
||||
.pytest_cache/
|
||||
cover/
|
||||
*.mo
|
||||
*.pot
|
||||
*.log
|
||||
local_settings.py
|
||||
db.sqlite3
|
||||
db.sqlite3-journal
|
||||
instance/
|
||||
.webassets-cache
|
||||
.scrapy
|
||||
docs/_build/
|
||||
.pybuilder/
|
||||
target/
|
||||
.ipynb_checkpoints
|
||||
profile_default/
|
||||
ipython_config.py
|
||||
__pypackages__/
|
||||
celerybeat-schedule
|
||||
celerybeat.pid
|
||||
*.sage.py
|
||||
.env
|
||||
.venv
|
||||
env/
|
||||
venv/
|
||||
ENV/
|
||||
env.bak/
|
||||
venv.bak/
|
||||
.spyderproject
|
||||
.spyproject
|
||||
.ropeproject
|
||||
/site
|
||||
.mypy_cache/
|
||||
.dmypy.json
|
||||
dmypy.json
|
||||
.pyre/
|
||||
.pytype/
|
||||
cython_debug/
|
||||
0
README.md
Normal file
0
README.md
Normal file
53
day1/README.md
Normal file
53
day1/README.md
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
# Day 1
|
||||
|
||||
Santa's reindeer typically eat regular reindeer food, but they need a lot of magical energy to deliver presents on
|
||||
Christmas. For that, their favorite snack is a special type of star fruit that only grows deep in the jungle. The Elves
|
||||
have brought you on their annual expedition to the grove where the fruit grows.
|
||||
|
||||
To supply enough magical energy, the expedition needs to retrieve a minimum of fifty stars by December 25th. Although
|
||||
the Elves assure you that the grove has plenty of fruit, you decide to grab any fruit you see along the way, just in
|
||||
case.
|
||||
|
||||
Collect stars by solving puzzles. Two puzzles will be made available on each day in the Advent calendar; the second
|
||||
puzzle is unlocked when you complete the first. Each puzzle grants one star. Good luck!
|
||||
|
||||
The jungle must be too overgrown and difficult to navigate in vehicles or access from the air; the Elves' expedition
|
||||
traditionally goes on foot. As your boats approach land, the Elves begin taking inventory of their supplies. One
|
||||
important consideration is food - in particular, the number of Calories each Elf is carrying (your puzzle input).
|
||||
|
||||
The Elves take turns writing down the number of Calories contained by the various meals, snacks, rations, etc. that
|
||||
they've brought with them, one item per line. Each Elf separates their own inventory from the previous Elf's inventory (
|
||||
if any) by a blank line.
|
||||
|
||||
For example, suppose the Elves finish writing their items' Calories and end up with the following list:
|
||||
|
||||
```
|
||||
1000
|
||||
2000
|
||||
3000
|
||||
|
||||
4000
|
||||
|
||||
5000
|
||||
6000
|
||||
|
||||
7000
|
||||
8000
|
||||
9000
|
||||
|
||||
10000
|
||||
```
|
||||
|
||||
This list represents the Calories of the food carried by five Elves:
|
||||
|
||||
- The first Elf is carrying food with 1000, 2000, and 3000 Calories, a total of 6000 Calories.
|
||||
- The second Elf is carrying one food item with 4000 Calories.
|
||||
- The third Elf is carrying food with 5000 and 6000 Calories, a total of 11000 Calories.
|
||||
- The fourth Elf is carrying food with 7000, 8000, and 9000 Calories, a total of 24000 Calories.
|
||||
- The fifth Elf is carrying one food item with 10000 Calories.
|
||||
|
||||
In case the Elves get hungry and need extra snacks, they need to know which Elf to ask: they'd like to know how many
|
||||
Calories are being carried by the Elf carrying the most Calories. In the example above, this is 24000 (carried by the
|
||||
fourth Elf).
|
||||
|
||||
Find the Elf carrying the most Calories. How many total Calories is that Elf carrying?
|
||||
0
day1/__init__.py
Normal file
0
day1/__init__.py
Normal file
2251
day1/input.txt
Normal file
2251
day1/input.txt
Normal file
File diff suppressed because it is too large
Load diff
15
day1/main.py
Normal file
15
day1/main.py
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
def max_calories() -> int:
|
||||
with open("./input.txt", "r") as f:
|
||||
calories = 0
|
||||
tmp = 0
|
||||
for line in f.readlines():
|
||||
if (c := line.strip()) != "":
|
||||
tmp += int(c)
|
||||
else:
|
||||
calories = max(calories, tmp)
|
||||
tmp = 0
|
||||
return calories
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
print(max_calories())
|
||||
8
poetry.lock
generated
Normal file
8
poetry.lock
generated
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
package = []
|
||||
|
||||
[metadata]
|
||||
lock-version = "1.1"
|
||||
python-versions = "^3.11"
|
||||
content-hash = "81b2fa642d7f2d1219cf80112ace12d689d053d81be7f7addb98144d56fc0fb2"
|
||||
|
||||
[metadata.files]
|
||||
14
pyproject.toml
Normal file
14
pyproject.toml
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[tool.poetry]
|
||||
name = "advent of code 2022"
|
||||
version = "0.1.0"
|
||||
description = ""
|
||||
authors = ["Ruidy <ruidy.nemausat@gmail.com>"]
|
||||
readme = "README.md"
|
||||
|
||||
[tool.poetry.dependencies]
|
||||
python = "^3.11"
|
||||
|
||||
|
||||
[build-system]
|
||||
requires = ["poetry-core"]
|
||||
build-backend = "poetry.core.masonry.api"
|
||||
Loading…
Reference in a new issue