Форум сайта python.su
0
Просьба, поругать мой быдлокод. И посоветовать как и что перенять, чтобы не писать подобное). NumPy похоже действительно нет в checkio
Офлайн
568
SilentiumИ где он?
Просьба, поругать мой быдлокод.
Офлайн
0
FishHookвот же выше приволил,
def matrix(a): x = 0 n=len(a) m=len(a[x]) fl=0 # compare rows for x in range(n-1): for a1,a2 in [(a[x][i],a[x][i+1]) for i in range(m-1)]: if a1==a2: fl+=1 if fl==3: return True fl=0 # compare cols for x in range(n-1): for a1,a2 in [(a[i][x],a[i+1][x]) for i in range(m-1)]: if a1==a2: fl+=1 if fl==3: return True fl=0 #compare general diag for x in range(n-1): for a1,a2 in [(a[i][i],a[i+1][i+1]) for i in range(m-1)]: if a1==a2: fl+=1 if fl==3: return True break fl=0 return False if __name__ == '__main__': assert matrix([[7, 1, 1, 8, 1, 1], [1, 1, 7, 3, 1, 5], [2, 3, 1, 2, 5, 1], [1, 1, 1, 5, 1, 4], [4, 6, 5, 1, 3, 1], [1, 1, 9, 1, 2, 1] ])==True
Офлайн
568
А тебя самого не затрахивает писать три абсолютно одинаковых куска кода?
Офлайн
0
FishHookНу дык! Если бы я чувствовал мир и гармонию то не отнимал бы Ваше драгоценное время!
А тебя самого не затрахивает писать три абсолютно одинаковых куска кода?
Офлайн
568
SilentiumОчевидно, код нужно переписать так, чтобы не было глупой копипасты.
Ну дык! Если бы я чувствовал мир и гармонию то не отнимал бы Ваше драгоценное время!
Офлайн