강의

멘토링

커뮤니티

Inflearn Community Q&A

han9311200463's profile image
han9311200463

asked

10-Week Completion C++ Coding Test | Algorithm Coding Test

3-I

3-I 추가 질문있습니다 :)

Resolved

Written on

·

261

0

안녕하세요 선생님 🙂

선생님 풀이의 설계를 공부한 후에 구현을 해봤는데요, 이해가 되지 않는 부분이 하나있어서 질문 드립니다.

int qSize = q.size()로 하신 후에 for문 안에 범위를 변수로 qSize로 해주셨는데요, 변수를 만들지 않고 for문안에 범위를 q.size()로 해도 같을거라 생각했지만 결과 값이 다르게 나옵니다. 이유가 뭔지 궁금합니다!!

http://boj.kr/44da77cfb1f148c0b2a030fe592933e9

c++코딩-테스트

Answer 2

1

kundol님의 프로필 이미지
kundol
Instructor

안녕하세요 ㅎㅎ

int qSize = q.size()로 하신 후에 for문 안에 범위를 변수로 qSize로 해주셨는데요, 

이렇게 해야 먼저 쌓은 queue를 기반으로 레벨링을 할 수 있습니다.

		for (int i = 0; i < q.size(); i++)

이렇게 되버리면 queue에 push가 계속일어나 -> size증가해서 레벨링이 안됩니다.

 

왜 레벨링일까요?

image수빈이가 3가지의 경우의 수를 실행 -> 해당 레벨에서 동생 찾을 수 있는지 확인해야하는 로직이 필요합니다.

 

 


또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


han9311200463님의 프로필 이미지
han9311200463
Questioner

아.. 선생님 덕분에 깨달았습니다 ㅠㅠ qSize랑 q.size() 디버그해보니 바로 찍히네요 감사합니다!!

0

han9311200463님의 프로필 이미지
han9311200463
Questioner

혹시 큐의 크기를 변수로 선언하지 않으면 첫번째 큐의 크기여서 안되는걸까요?

han9311200463's profile image
han9311200463

asked

Ask a question