해결된 질문
작성
·
21
·
수정됨
0
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
문제 자체를 이해를 못했네요ㅜㅜ
2. 만약, 위에서 자른 막대의 절반 중 하나를 버리고 남아있는 막대의 길이의 합이 X보다 크거나 같다면, 위에서 자른 막대의 절반 중 하나를 버린다.
2번 조건에서 위에서 자른 막대의 절반 중 하나를 버린다는 뜻이
64 -> 32 -> 16 -> 8 -> 4 -> 2 -> 1 에서 16 8을 더했을때 23을 넘어가니까 위에서 자른 절반 중 하나를 버리면 16을 버리는게 아닌가요?
답변 1
0
안녕하세요 창완님 ㅎㅎ
이 문제는 항상 가장 짧은 막대를 먼저 자르고, 필요한 경우 남은 막대의 합을 확인해 불필요한 막대를 버리는 방식입니다. 즉, 16을 바로 버리는 것이 아니라, 가장 짧은 막대를 자르고 나서 필요 여부를 판단합니다.
16 8을 더했을때 23을 넘어가니까 위에서 자른 절반 중 하나를 버리면 16을 버리는게 아닌가요?
-> 이 때는 16 -> 8, 8 중에서 가장 짧은 것은 8이니까 8 하나를 버리게 됩니다.
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.