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

dlsvmfjsrkddml님의 프로필 이미지
dlsvmfjsrkddml

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

6-J

[ 6 - J ] 질문입니다

작성

·

310

·

수정됨

0

안녕하세요 선생님, 답지에서 이해가지 않는 부분이 있어 질문을 드립니다.

https://www.acmicpc.net/source/share/c2fb354cd24049edb34fbd09a91a38d3

check 함수 및 마지막에 직접 태우는 부분에서
temp = 0으로 초기화해야 올바른 답이 나온다고 생각했는데 temp = m으로 초기화 해야 하는 이유를 확실히 모르겠습니다.

예제 2를 예시로 들어봤을 때
(학생 수 : 7, 놀이기구 수 : 2, 각각 운행시간 : 3 2)
temp = 0으로 초기화하고 시작하면
6분이 되었을 때 놀이기구 1은 2명, 놀이기구 2는 3명을 막 완료한 상태이므로 남은 아이들은 2명, 2명을 각각 놀이기구 1, 2에 태워 운행이 끝날 때 까지 기다리면 + 3분으로 9분이 올바른 종료 시간 같은데 아닌 이유가 무엇인가요?

 

답변 2

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 ㅎㅎ

temp = 0으로 초기화해야 올바른 답이 나온다고 생각했는데 temp = m으로 초기화 해야 하는 이유를 확실히 모르겠습니다.
>> 놀이기구를 아이들이 모두 다 탄 상태를 의미합니다. 모두 다 탔기 때문에 m번째 아이까지 처리했다~ 라는 의미를 가집니다.


예제 2를 예시로 들어봤을 때
(학생 수 : 7, 놀이기구 수 : 2, 각각 운행시간 : 3 2)
temp = 0으로 초기화하고 시작하면
6분이 되었을 때 놀이기구 1은 2명, 놀이기구 2는 3명을 막 완료한 상태이므로 남은 아이들은 2명, 2명을 각각 놀이기구 1, 2에 태워 운행이 끝날 때 까지 기다리면 + 3분으로 9분이 올바른 종료 시간 같은데 아닌 이유가 무엇인가요?

3 3 3

2 2 2 2

>> 9분은 올바른 종료시간이 맞습니다. 다만 여기서 temp는 몇번째 아이를 가리키는 것입니다.

 

감사합니다.

 

 

temp를 운행 종료된 아이들로 이해했었는데 태우기만 해도 처리했다고 보는 것이었군요 감사합니다!

0

안녕하세요, 인프런 AI 인턴이에요.

이해가 어려운 부분에 대해 질문해주셔서 감사합니다. 답지를 살펴보았는데요, temp 변수는 운행시간을 나타내는 변수로 사용되는 것 같습니다. 초기에 temp 변수를 0으로 설정하면, 마지막에 반복문을 돌리고 남은 아이들을 처리할 때 운행시간이 0이 되면 반복문이 종료될 것입니다.

예제 2의 경우, 남은 아이들은 놀이기구 1과 2에 각각 2명씩 있으므로, 두 놀이기구에서 운행시간이 3과 2로 가장 짧은 시간이 필요합니다. 따라서 temp 변수를 m으로 초기화하여 시작해야 합니다.

제가 가정으로 설명드린 부분이므로, 해당 문제의 힌트나 풀이를 잘 이해하려면 문제의 전체 내용과 제출 코드를 확인해야 할 것 같아요. 해당 문제에 대한 자세한 내용과 풀이방법은 문제 페이지를 참고하시면 좋을 것 같습니다.

더 궁금한 점이 있으시다면 언제든지 물어보세요. 즐거운 프로그래밍 공부 되세요!

temp는 운행시간 변수가 아니라서 ai 답변은 의미가 없는 것 같습니다

dlsvmfjsrkddml님의 프로필 이미지
dlsvmfjsrkddml

작성한 질문수

질문하기