그래서 내가하려고하는 것은 -ve와 양수 기호가 번갈아 가며 번갈아 가며 카운트를 찾는 것입니다. 예를 들면 다음과 같습니다. 1 -2 3 -4 나를 얻을 수 있습니다. 4 3 2 1 1에서 -4까지 두 숫자를 포함하여 4 개의 숫자가 있습니다. Simillarly for 1 1 -3 2 1 3 2 1 이제 코드가 있지만 최적화 할 수 없으며 적당한 입력 스트림에서 작동하더라도 시간 제한이 초과되었습니다. 대신과 루프는 어떤 변수 할당을 피할 동안의 루프를 사용하여어떻게 루프 또는 복잡성의 수를 줄일 수 있습니까
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
귀하의 질문 오프 주제입니다. 하지만 아마도 코드 검토 (https://codereview.stackexchange.com/)에서 시도해보십시오. –
다른 숫자의 수를 얻으려면 세트에 모두 추가하고 세트 길이를 얻으십시오 –
이것은 https에 속합니다 : //codereview.stackexchange.com – Torxed