Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Find Sequence by sion
def checkio(matrix):
#Ex. targets =['1111','2222',…,'9999']
targets = [''.join([i for l in range(4)]) for i in '123456789']
#Ex. patterns = ['12111','11412',…]
patterns = createPattern(matrix)
for p in patterns:
for t in targets:
if t in p:
return True
return False
def createPattern(matrix):
pattern =[]
#Add horizontal pattern
pattern.extend(matrix)
#Add vertical pattern
pattern.extend(list(zip(*matrix)))
#Add diagonally pattern
for i in range(len(matrix)+1):
pattern.append([matrix[x][len(matrix)-(i-x)] for x in range(i)])
pattern.append([matrix[x][i-x-1] for x in range(i)])
pattern.append([matrix[len(matrix)-x-1][len(matrix)-(i-x)] for x in range(i)])
pattern.append([matrix[len(matrix)-x-1][i-x-1] for x in range(i)])
return [''.join([str(i) for i in p]) for p in pattern]
Feb. 22, 2014
Comments: