• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    해결됨

5-V 문제 질문

23.09.13 14:39 작성 조회수 154

0

안녕하세요 큰돌선생님 매번 좋은강의 감사합니다

해당문제 풀이에서 다른부분은 모두 이해 가는데,

make함수에서 if(interval == n) break;

부분이 왜 필요한지 잘 모르겠습니다.

어차피 for 루프가 끝나면 자동으로 종료되기때문에 필요없다고 생각하여 제출했는데 틀렸다고 나오네요 혹시 무엇때문에 필요한 것인가요?

답변 1

답변을 작성해보세요.

1

안녕하세요 명운님 ㅎㅎ

interval가 n일 때는 for문이 한번 작동해야 합니다.

n이라는 것은 피자한판 자체를 다 사용한다는 의미이기 때문입니다.

interval은 크기이죠?

void make(int n, int psum[], map<int, int> & mp){ 
    for(int interval = 1; interval <= n; interval++){

 

근데 여기서 BREAK;를 걸지 않으면 이부분의 FOR루프가 더 돌기 때문에

        for(int start = interval; start <= n + interval - 1; start++){

 

한판을 다 사용하는 경우의 수에는.

1번만 돌 수 있도록 BREAK;를 걸어주는 것입니다.

 

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

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

감사합니다.

강사 큰돌 올림.


이명운님의 프로필

이명운

질문자

2023.09.14

아.. 좀만 더 생각해보면 알 수 있는거였군요

매번 이해하기 쉽게 답변해주시는것 너무 감사합니다!