Also was ich versuche zu tun ist, finden Sie die Anzahl der alternierenden Zahlen, so dass es mit -ve und positives Vorzeichen für zB 1 -2 3 -4 würde mich bekommen 4 3 2 1 wie von 1 bis -4 einschließlich der beiden Zahlen gibt es 4 Nummern. Simillarly für 1 1 -3 2 würde mir 1 3 2 1 Jetzt habe ich den Code, aber ich kann es nicht optimieren und es gibt mir ein Zeitlimit überschritten Fehler, obwohl es für moderate Eingabe Stream funktioniert.Wie reduziere ich die Anzahl der Schleifen oder Komplexität
j=0
count=0
length=(raw_input())
st=map(int,raw_input().split())
while j+1 < len(st):
k=j+1
count=0
temp=j
while k<len(st) and ((st[k]<0 and st[j]>0) or (st[k]>0 and st[j]<0)):
count+=1
k+=1
j+=1
print count+1,
j=temp+1
print 1
Ihre Frage ist Wegthema. Aber Sie können es vielleicht versuchen bei [code review] (https://codereview.stackexchange.com/) –
Wenn Sie die Anzahl der verschiedenen Zahlen erhalten möchten, dann fügen Sie einfach alle zu einem Satz und erhalten Sie die festgelegte Länge –
Dies gehört zu https : //codereview.stackexchange.com – Torxed