🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    해결됨

3-G 풀이 원리가

23.04.08 20:23 작성 23.04.08 21:00 수정 조회수 290

0

수빈이가 가는 모든곳을 계산할건데

next가 먼저 자리잡는애가 최단시간 거리고

next가 먼저 자리잡은애가 있는데 지금자리에서 1번만에 이동가능하면 else if 문이 실행되서 cnt가 늘어나는거고

그중에서 동생이 있는곳의 값을 출력하는거군요??

그리고 for (int next : {now-1, now+1, now*2}) 이 부분을 int i=0; i<n;i++ 이런식으로 구현하려면 어떻게 해야할까요? 그냥 몰라도 되려나요

답변 1

답변을 작성해보세요.

1

안녕하세요 현성님 ㅎㅎ

해당부분을 이렇게 바꾸시면 됩니다.

        for(int i = 0; i < 3; i++){
        	int next = b[i]; 
            if (0 <= next && next <= MAX) { 
                if (!visited[next]) {
                    q.push(next); 
                    visited[next] = visited[now] + 1;
                    cnt[next] += cnt[now];
                } else if (visited[next] == visited[now] + 1) {
                    cnt[next] += cnt[now];
                }
            }
		}   

 

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

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

감사합니다.

강사 큰돌 올림.

채널톡 아이콘