Portál AbcLinuxu, 3. listopadu 2025 02:08
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:', diff
pozn.: 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.