aoc

My solutions for the Advent of Code
git clone https://git.tronto.net/aoc
Download | Log | Files | Refs | README

a.py (443B)


      1 import fileinput
      2 
      3 def neigh(a, i, j):
      4 	return [
      5 		a[i-1][j-1], a[i-1][j], a[i-1][j+1],
      6 		a[i][j-1],              a[i][j+1],
      7 		a[i+1][j-1], a[i+1][j], a[i+1][j+1],
      8 	].count('@')
      9 
     10 with fileinput.input() as lines:
     11 	a = [
     12 		['.'] * 200,
     13 		*[['.'] + list(line.replace('\n', '.')) for line in lines],
     14 		['.'] * 200,
     15 	]
     16 
     17 s = 0
     18 for i in range(1,len(a)-1):
     19 	for j in range(1,len(a[1])-1):
     20 		if a[i][j] == '@' and neigh(a, i, j) < 4:
     21 			s += 1
     22 print(s)