Advent of Code 2021 Python Solution: Day 1
Viper
Posted on December 4, 2021
Challenge is at this link.
I have made a helper function to read data for all day's problem. Each day's data file will be inside data
folder in same directory. The data file will be a text file where contents will be taken from challenge's test example and real input. It will be in the format.
{Test Input}
Split From Here
{Real Input}
def get_data(day=1):
"""
Returns test and real data in list format.
Raw data should be maintained as:
[test data]
Split From Here
[actual data]
"""
file_name = f"data/day{day}.txt"
with open(file_name) as fp:
data = fp.read().strip().split("Split From Here")
data = [d.strip().split("\n") for d in data]
return data
get_data()
Part 1
data,data1 = get_data()
data = list(map(int, data))
data1 = list(map(int, data1))
pd = None
res = []
for d in data:
if pd is None:
res.append(None)
else:
if pd>d:
res.append("0")
else:
res.append("1")
pd=d
print(res.count("1"))
Answer of test data is 7 and of real input is 1266.
Part 2
w = []
wsum = []
i = 0
ps = None
for j in range(3, len(data1)+1):
wsum.append(sum(data1[i:j]))
i+=1
pd = None
res1 = []
for d in wsum:
if pd is None:
res1.append(None)
else:
if pd>=d:
res1.append("0")
else:
res1.append("1")
pd=d
print(res1.count("1")
All of my codes are available in GitHub as Jupyter Notebook.
Why not read more?
- Gesture Based Visually Writing System Using OpenCV and Python
- Gesture Based Visually Writing System: Adding Visual User Interface
- Gesture Based Visually Writing System: Adding Virtual Animationn, New Mode and New VUI
- Gesture Based Visually Writing System: Add Slider, More Colors and Optimized OOP code
- Gesture Based Visually Writing System: A Web App
- Contour Based Game: Break The Bricks
- Linear Regression from Scratch
- Writing Popular ML Optimizers from Scratch
- Feed Forward Neural Network from Scratch
- Convolutional Neural Networks from Scratch
- Writing a Simple Image Processing Class from Scratch
- Deploying a RASA Chatbot on Android using Unity3d
- Naive Bayes for text classifications: Scratch to Framework
- Simple OCR for Devanagari Handwritten Text The output will be 1217.
💖 💪 🙅 🚩
Viper
Posted on December 4, 2021
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.