Portál AbcLinuxu, 9. května 2025 18:56
num = [0,1,2,-2,4,6,8,10,11,25,-4,-6] #num = [3,2,30,11,4,90,5,-3,7] #num = [0,10,3,7,1,14] num.sort() print 'serazeno vzestupne:', num seqstop = 1 seqstart = 0 diff = num[1] - num[0] for i in range(1, len(num)): if i+2 > len(num): break diff2 = num[i+1] - num[i] if diff == diff2: seqstop += 1 else: # posunutim konce sekvence, je detekovana sekvence na zacatku pole # detekuji vyskyt max jedne sekvence v poli if seqstop != 1: break seqstart += 1 diff = diff2 print 'zacatek sekvence: index %d ; konec sekvence: index %d' % (seqstart, seqstart+seqstop) print 'odstup prvku sekvence:', diffpozn.: sekvence je vždy nalezena a to sekvence posledních dvou čísel
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.