inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

2-D

만약 카운팅을 전역변수로 한다면..?

510

SK Lee

작성한 질문수 2

0

안녕하세요 큰돌 선생님

 

http://boj.kr/3a67aafe251a46a88295e4f3ffdb4392

 

만약에 DFS를 void로 선언해서 전역변수로 counting을 한다면, 어떻게 달라질지 확인해보다가 안풀려서 질문드립니다 ^^;

예제출력은 1 7 13인데 제가 올린건 1 6 13으로 나오던데... 디버깅이 좀 빡세서요 ㅜ 어떤이유인지 같이 봐주실수 있을까요?

 

코테 준비 같이 해요! C++

답변 3

2

창신동 장첸

http://boj.kr/324db7f034ce41558c43e94f6d5e86b1

위 소스처럼 수정하니까 됐어요

디버깅은 제대로 하기 어려워서 아래와 같은 추측을 해봤습니다

재귀함수안에서 전역변수를 11, 21라인에서 중복해서 조작하니까 잘 안 된것 같다는 생각이 듭니다

 

1

큰돌

ddo님이 잘 답변해주신 것같습니다.

전역변수를 기반으로 한다면

f1, f2, f3 이런식으로 함수가 호출되면서 counter가 ++되는 로직이겠죠? counter를 1씩 증가시키는 것은 올바른 로직이나.

근데 갑자기 어떠한 함수에서는 counter = 1 이렇게 갑자기 1로 초기화를 해버리면 예상하지 못한 결과가 나오게 됩니다.

감사합니다.

0

SK Lee

아하 궁금증이 풀렸네요 감사합니다 :)

1-E질문입니다!

0

533

2

3-L 틀린 부분 피드백 부탁드립니다.

0

835

2

1-A문제 순열재귀함수 질문입니다.

0

396

1

1-A 일곱난쟁이문제입니다

0

470

1

문제 풀 때 방향성에 대해

0

810

1

맥에서 vs code로 실행 관련 질문입니다

0

530

1

17071번 메모리 초과

0

390

1

1-C질문입니다!

0

428

2

2-B BFS 시간초과질문

0

638

2

1-O 13번 라인

0

447

1

6-J 놀이공원 문제 질문

0

389

1

구현관련 질문

0

491

1

강의 교안

0

322

1

실력을 더 올리고나서 강의를 보는 것이 맞을까요?

0

550

1

안녕하세요! 재귀함수에 관해서 질문드립니다

0

540

1

1-K

0

481

2

3-G번 질문있습니다.

1

480

3

3-C 실행 시간 질문드립니다.

0

503

1

4-A 문제 풀이 질문있습니다.

0

601

2

비트마스킹 연산자 "1의 보수" 영문 표기법

0

441

1

격자탐색 문제에서 BFS 시간복잡도 질문드립니다.

0

349

1

3-O go 함수 질문 드립니다.

1

453

2

4-A 출력 질문

0

308

1

1주차 1-O 질문드립니다

0

266

1