조건 만족 여부에 따라 begin을 증가시키거나 end를 증가시키거나 해야 하는데,
begin, end를 -1로 놓아야 하는지 0으로 놓아야 하는지 뭐 어떻게 놓아야 하는지,
초깃값을 동일하게 놓아야 하는지, end가 하나 앞서게 놓아야 하는지,
각각의 증가 시점은 언제인지
헷갈리지 않게 구현할 수 있는 꿀팁 없나요?
조건 만족 여부에 따라 begin을 증가시키거나 end를 증가시키거나 해야 하는데,
begin, end를 -1로 놓아야 하는지 0으로 놓아야 하는지 뭐 어떻게 놓아야 하는지,
초깃값을 동일하게 놓아야 하는지, end가 하나 앞서게 놓아야 하는지,
각각의 증가 시점은 언제인지
헷갈리지 않게 구현할 수 있는 꿀팁 없나요?
나만 헷갈리는구나 ㅅㅂ
개인적으로 햇갈리지 않다 => 코드가 깔끔하다 라고 생각함 걍 내 의견이니 적당히 걸러보셈. s랑 e를 각각 시작과 끝 포인터라고 하면 젤 깔끔한건 e-s << 이거가 '구간의 길이'가 되도록 하는거라고 생각함. 그렇게 하려면 자연스럽게 반열린구간 [s, e)로 코딩하게 되고, s랑 e의 초기값을 0으로 두게 될거고. 포인터 증가(or 변경) 시점은, 그냥 연습 많이하면 자명하게 나올꺼임.
재귀로 쨘다 - dc App
자 슬라이딩 윈도우, 투포인트 본질만 딱 알려준다. 슬라이딩 윈도우는 맨 처음 값, 즉 인덱스 기준 0 부터 k 길이 까지 더하는거임. 그니까 항상 시작을 sum(list[:k]) 로 놓고 시작하면됨. 투포인트의 본질은 맨앞값, 맨 뒷값을 고정 시킨 상태에서 진행하는거임. 그니까 left 는 항상 인덱스 기준 0으로 설정하고, right는 항상 인덱스 기준 len(list) - 1로 고정하면됨. 나머지는 조건에 따라 조건식 세우고 반복문 돌리면되고.