로그인 바로가기 하위 메뉴 바로가기 본문 바로가기
난이도
입문

모두를 위한 컴퓨터 과학 (CS50 2019)

임시 이미지 David J. Malan (데이비드 J. 말란)
http://www.boostcourse.org/cs112/forum/49094
좋아요 15504 수강생 34435

8번 문제 '아래 코드와 같이 피라미드 쌓기를 재귀적으로 작성한 코드에서, h 값으로 3이 입력되었을 때 draw 함수는 총 몇 번 호출될까요?' 라는 예제의 답이 3이라고 설정되어 있는데, main에서 호출하는 경우는 갯수에서 제외한다는 설명이 없으니 draw(3), draw(2), draw(1), draw(0)으로 총 4번이 맞다고 생각합니다. 문제에 대한 설명을 늘리시고 3을 정답처리로 계속 처리하시거나, 정답을 4로 변경하시는 방법 둘 중에 하나를 택하는 것이 맞다고 생각합니다.

또한 6번 문제 하한이 빠른 순서에 버블 정렬과 선택 정렬의 순서에 따라서 정답이 나뉘고 있고, 9번 문제에서도 하한이 빠른 순서에 선택정렬의 하한이 가장 느리다고 설정을 하셨는데, 강의의 생각해보기에서 '선택 정렬의 실행 시간의 하한도 버블 정렬처럼 더 단축시킬 수 있을까요?'라고 질문하시고는 수강생이 방법을 생각하지 못 할 것이라고 가정해놓고 문제를 만드신 것 같아 좀 의아합니다. 제가 생각해본 답변으로는 선택 정렬로도 Ω(n)이 나올 수 있기때문에 문제가 더 의아하게 느껴졌습니다.

답변 기다리겠습니다.