3-O 질문 있습니다.
강의에서 나오는 풀이와 몇가지 차이가 있긴 하지만
- 인덱스를 100*H +N으로 구한다는 점
- 사다리를 12로 놓는다는 점
이 차이가 있는것 같다고 생각했습니다.
강사님 풀이 중 다음 부분에서 궁금한 점이 있습니다. H를 사다리라고 한다면
Hㅁㅁㅁㅁㅁ 를 탐색하고 난 이후에 for (int j = 1; j <= n; j++)부분으로 인해서 첫번째 공간에 사다리를 또 놓게되는 중복이 발생하지는 않는지 궁금합니다.
예를들어 처음에 Hㅁㅁ 인상태로 go를 하면 HㅁH를 탐색하고 첫번째 인덱스를 0으로 바꾼후
ㅁHㅁ 탐색 그 이후
ㅁㅁH 케이스에서 다시 HㅁH 가 발생하지 않는지 궁금합니다.
또한 저의 풀이는 계속 9%에서 시간초과가 발생하는데 그 이유가 궁금합니다.
Answer 2
1
lll님 안녕하세요. ㅎㅎ
좋은 풀이입니다. 나중에 색종이붙이기 문제를 푸시는데 그 코드와 유사합니다. y와 x를 * 1000을 통해서 인덱스를 잡고 들어가며 순차적으로 x, 다 전진 이후 y 이렇게 드가는 코드. 훌륭합니다.
일단 lll님의 코드 중 로직상 틀린점은 없는 것같습니다.
simul함수 : ok
dfs : ok
그렇다면 혹시나. 중복적인 함수호출은 많이 하는 것이 아닌가? 그 또한 아닙니다.
혹시나 운좋게 예제코드를 맞은 것은 아닌가? 사다리 잘 지었는지 확인해봤는데 그 또한 아닙니다.
but, 그러면 이 코드에서 어떻게 하면 시간초과를 해결할 수 있을까?
함수호출을 줄입니다. : http://boj.kr/c59a3833193041fa90a52167c5900eff
- 이렇게 해결하시면 됩니다.
[문의 답변]
Hㅁㅁㅁㅁㅁ 를 탐색하고 난 이후에 for (int j = 1; j <= n; j++)부분으로 인해서 첫번째 공간에 사다리를 또 놓게되는 중복이 발생하지는 않는지 궁금합니다.
>> 네 중복발생합니다.
>> but, 이 문제의 경우 n의 크기가 작아서 그닥 영향은 끼치지 않아요. 또한 continue가 있어서 함수호출부분에 있어서 중복적인 함수호출이 발생하지 않습니다.
감사합니다.
강사 큰돌 올림.
0
우와 ... 이거때문에 진짜 고생하고있었는데 답변해주셔서 감사합ㄴ니다 ㅜㅜㅜ
level < 3 조건만 추가 하니까 아슬아슬 통과하네요 ..! 3넘어가면 바로 return 해서 차이가 없을 줄 알았는데 ... 덕분에 하나더 배워갑니다...!
매번 질문 받아주셔서 감사해용
0
사실 이문제 시간초과가 좀 애매하긴해요. 이정도의 "함수호출을 절약하는 것"만으로 시간초과가 풀리는 것은 흔치가 않긴하거든요. ㅎㅎ 그래도 호출을 줄이는 방법이니 잘 공부해두세요. ㅎ
감사합니다.
1-E질문입니다!
0
511
2
3-L 틀린 부분 피드백 부탁드립니다.
0
813
2
1-A문제 순열재귀함수 질문입니다.
0
379
1
1-A 일곱난쟁이문제입니다
0
452
1
문제 풀 때 방향성에 대해
0
794
1
맥에서 vs code로 실행 관련 질문입니다
0
518
1
17071번 메모리 초과
0
383
1
1-C질문입니다!
0
413
2
2-B BFS 시간초과질문
0
625
2
1-O 13번 라인
0
436
1
6-J 놀이공원 문제 질문
0
377
1
구현관련 질문
0
480
1
강의 교안
0
314
1
실력을 더 올리고나서 강의를 보는 것이 맞을까요?
0
543
1
안녕하세요! 재귀함수에 관해서 질문드립니다
0
533
1
1-K
0
469
2
3-G번 질문있습니다.
1
466
3
3-C 실행 시간 질문드립니다.
0
490
1
4-A 문제 풀이 질문있습니다.
0
588
2
비트마스킹 연산자 "1의 보수" 영문 표기법
0
432
1
격자탐색 문제에서 BFS 시간복잡도 질문드립니다.
0
331
1
3-O go 함수 질문 드립니다.
1
439
2
4-A 출력 질문
0
301
1
1주차 1-O 질문드립니다
0
252
1

