| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- file = open('input.txt','r')
- tmp = file.readlines()
- data = []
- for f in tmp:
- data.append(int(f.replace('\n','')))
- def validNumbers(num):
- num -= 1
- res = []
- rng = range(num - 26, num )
- for x in rng:
- for y in rng:
- if data[x] == data[y]:
- continue
- res.append(data[x]+data[y])
- return res
- def sumInRange(rng):
- sum = 0
- for i in rng:
- sum += data[i]
- return sum
- def findWeakness(rng):
- smal = 99999999999
- high = 0
- for i in rng:
- if data[i] < smal:
- smal = data[i]
- if data[i] > high:
- high = data[i]
- print(smal+high)
- for i in range(1,len(data)):
- end = i
- while end < len(data):
- rng = range(end - i,end)
- if sumInRange(rng) == 248131121:
- findWeakness(rng)
- end += 1
- exit()
- count = 0
- preamble = []
- for d in data:
- count += 1
- if count <= 25:
- continue
- val = validNumbers(count)
- if data[count - 1] not in val:
- print('count: '+str(count))
- print('preamble: ')
- for i in range(count - 27,count - 2):
- preamble.append(data[i])
- print(preamble)
- print('valid:')
- print(val)
- print('odd one is: '+str(data[count - 1]))
- exit()
|