day 4
This commit is contained in:
commit
7a0b0a1e7f
|
@ -0,0 +1,31 @@
|
|||
data = "172930-683082".split("-")
|
||||
|
||||
min_, max_ = int(data[0]), int(data[1])
|
||||
|
||||
|
||||
def validate(num):
|
||||
repeat = False
|
||||
nums = str(num)
|
||||
# print(nums)
|
||||
for i, c in enumerate(nums):
|
||||
if i == len(nums) - 1:
|
||||
break
|
||||
# print(i, len(nums))
|
||||
nextc = nums[i + 1]
|
||||
if nextc < c:
|
||||
# print(f"not increasing, {nextc} < {c}")
|
||||
return False # not increasing
|
||||
if c == nextc:
|
||||
# print("found repeat")
|
||||
repeat = True
|
||||
return repeat
|
||||
|
||||
|
||||
matches = 0
|
||||
for i in range(min_, max_):
|
||||
if validate(i):
|
||||
matches += 1
|
||||
print(matches)
|
||||
|
||||
|
||||
# print(validate(123466))
|
|
@ -0,0 +1,39 @@
|
|||
data = "172930-683082".split("-")
|
||||
|
||||
min_, max_ = int(data[0]), int(data[1])
|
||||
|
||||
|
||||
def validate(num):
|
||||
repeats = False
|
||||
repeats_twice = False
|
||||
repeatlen = 0
|
||||
lastc = None
|
||||
nums = str(num)
|
||||
|
||||
for i, c in enumerate(nums):
|
||||
if lastc:
|
||||
if c < lastc:
|
||||
return False # not rising
|
||||
if c == lastc:
|
||||
repeats = True
|
||||
if repeatlen == 0:
|
||||
repeatlen = 2
|
||||
else:
|
||||
repeatlen += 1
|
||||
else:
|
||||
if repeatlen == 2:
|
||||
repeats_twice = True
|
||||
repeatlen = 0
|
||||
|
||||
lastc = c
|
||||
|
||||
return repeats and (repeats_twice or repeatlen == 2)
|
||||
|
||||
|
||||
matches = 0
|
||||
for i in range(min_, max_):
|
||||
if validate(i):
|
||||
matches += 1
|
||||
print(matches)
|
||||
|
||||
# print(validate(123466))
|
Loading…
Reference in New Issue