From a17271dea282b5d7bac3d186219d2669ca90ebe5 Mon Sep 17 00:00:00 2001 From: kwout Date: Mon, 5 Sep 2022 12:14:56 -0400 Subject: [PATCH] streamlined 5 even more --- 2021/day5/5.py | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/2021/day5/5.py b/2021/day5/5.py index 5f3dc98..614a625 100644 --- a/2021/day5/5.py +++ b/2021/day5/5.py @@ -15,25 +15,21 @@ for l in lines: yDir = 0 if l[0][0] > l[1][0]: xDir = -1 - if l[0][0] < l[1][0]: + elif l[0][0] < l[1][0]: xDir = 1 if l[0][1] > l[1][1]: yDir = -1 - if l[0][1] < l[1][1]: + elif l[0][1] < l[1][1]: yDir = 1 - if xDir == 0: - for i in range(l[0][1],l[1][1]+yDir,yDir): - grid[l[0][0]][i] += 1 - if grid[l[0][0]][i] == 2: - overlaps += 1 - if yDir == 0: - for i in range(l[0][0],l[1][0]+xDir,xDir): - grid[i][l[0][1]] += 1 - if grid[i][l[0][1]] == 2: - overlaps += 1 for i in range(0, max([abs(l[1][0]-l[0][0]),abs(l[1][1]-l[0][1])])+1): - gridAll[l[0][0]+i*xDir][l[0][1]+i*yDir] += 1 - if gridAll[l[0][0]+i*xDir][l[0][1]+i*yDir] == 2: + x = l[0][0]+i*xDir + y = l[0][1]+i*yDir + if xDir == 0 or yDir == 0: + grid[x][y] +=1 + if grid[x][y] == 2: + overlaps +=1 + gridAll[x][y] += 1 + if gridAll[x][y] == 2: overlapsAll += 1