인프런 커뮤니티 질문&답변

작성자 없음

작성자 정보가 삭제된 글입니다.

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

3. 뮤직비디오 반례 수정 영상

Count함수 질문

작성

·

290

0

def Count(capacity):

cnt=1

sum=0

for x in Music:

if sum+x>capacity:

cnt+=1

sum=x

else:

sum+=x

return cnt

만약

Music = [1,2,3,4,5,6,7,8,9],

cnt = 1

capacity=23 일때,

x=6 까지 진행이 되었다고치면

cnt=1, sum=21 이고,

 

x=7이면, sum+x가 capactiy보다 크니까

cnt=2가 되고

sum=x가 진행되면서

x=8일때 sum+x>capacity가 7+8>23에서 7을 왜 남겨두는지 이해가 가지않습니다.

 

제 머리로는 (1,2,3,4,5,6,7) (8,9)

1~7까지 합한게 23이 넘으니까 8부터 비교를 해야되지않나라는 생각이 박혀있는데

8,9는 DVD로 만들수있는데

sum+x>capacity 성립하기 위해 7도 포함해서 하는건지

처음 cnt에 1을 선언하는게 그 부족한 개수를 더하신건지

정확한 이유를 잘 모르겠습니다.

 

답변 1

0

#참고 위 코드는 첨부해주신 소스 코드 입니다. (게시물 수정이 안 되네요?)

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기