inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

3-P

왜 맞는 거죠...?

255

wlsdnr929

작성한 질문수 15

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

http://boj.kr/fd61ee1ade9a43cd97f9406175b060c2

안녕하세요 강사님, 이 문제를 처음에는 visited와 temp를 모두 [10][10]으로 하고 풀었더니 틀렸습니다. 그래서 뭔가 range_check에서 틀린 부분이 있을 거 같아 생각을 하다, 그냥 한 번 배열의 범위를 늘려보자고 생각했습니다. 그래서 visited와 temp를 모두 [12][12]로 바꾸니 정답을 받았습니다.

그 후에 왜 정답인지 생각해보는데, 정말 모르겠습니다..

분명 board의 끝부분에서 뭔가 차이가 있을 것 같은데 보이질 않습니다...

알 수 있을까요??

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

답변 1

0

큰돌

안녕하세요 wls님 ㅎㅎ 잘 짜셨네요.

다음 코드를 보면 + 1로 참조하고 있죠? 근데 여기서.

만약 0 ~ 9 까지만 해놓으면 +1이 과연 잘 더해질까요? n이 10일 때 이고 j가 9일 때 + 1이라면 10이 되서 10을 참조하게 되거든요.

				if (visited[i][j]) {
					// 꽃잎이 퍼졌을 경우의 돈 계산
					cur_money += board[i][j];
					cur_money += board[i - 1][j];
					cur_money += board[i + 1][j];

그리고 교안에도 이런 내용이 있는데요.

배열의 경우 조금 더 넓게

int a[10004];

예를 들어 10000의 최대범위를 가지는 문제가 있다면 이런식으로 4정도 여유공간을 주는 게 좋습니다. 예를 들어 10000이라면 10000 + 4로 10004로 해야 하는 것이죠. 이를 통해 오버플로에 대한 신경을 덜 쓰게 만듭니다. 

 

이부분만 다시 한번 읽어주세요.

감사합니다.

0

큰돌

제가 wls님을 위해 교안을 좀 더 자세하게 수정했는데요.

이거 아마 이번주 내로 반영될 거에요. ㅎㅎ 미리 공개합니당 이거 참고해주세요~

image

0

wlsdnr929

자세한 답변 감사드립니다! 제가 조금 더 교안을 꼼꼼히 봤어야 했네요..

새로운 교안을 미리 받아 기분이 좋네요 ㅎㅎ

말씀해주신 것 항상 조심하면서 앞으로 남은 수업도 열심히 듣겠습니다.

감사합니다.

1-E질문입니다!

0

518

2

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

0

822

2

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

0

386

1

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

0

459

1

문제 풀 때 방향성에 대해

0

801

1

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

0

523

1

17071번 메모리 초과

0

386

1

1-C질문입니다!

0

423

2

2-B BFS 시간초과질문

0

630

2

1-O 13번 라인

0

443

1

6-J 놀이공원 문제 질문

0

381

1

구현관련 질문

0

484

1

강의 교안

0

320

1

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

0

546

1

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

0

536

1

1-K

0

474

2

3-G번 질문있습니다.

1

474

3

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

0

494

1

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

0

590

2

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

0

435

1

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

0

335

1

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

1

448

2

4-A 출력 질문

0

305

1

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

0

259

1