chjiiwon30   5년 전

안녕하세요 질문 첨 올려봅니당

이 문제는 백트래킹, bfs로 푸는 거라던데, 저는 이 사실을 알지 못하고 dp로 풀었더랬죠...

물론 폭풍 검색해서 게시판에 이미 있는 반례랑 예외처리 다해줬고 답 잘 나옵니다(맞왜틀ㅈㅅㅠㅠ)

bfs로 풀어도되지만 dp로 푼 이 코드가 도대체 어디가 어떻게 틀린것인지 매우매우 궁금해서 이렇게 질문을 올려봅니다...

아니면 제가 놓친 반례, 예외, 문제들이 있어서 dp로는 풀 수 없는 것인지 궁금합니다ㅠㅠ

zxcvber   5년 전

우선 반례를 몇 가지 말씀 드리자면 다음이 있습니다

6 8 

Got: 1 

Expected: 2 


6 9 

Got: 2 

Expected: 3 


6 16 

Got: 2 

Expected: 3

zxcvber   5년 전

추가적으로 발견한 부분이 있어 글을 남깁니다

DP를 하는 과정에서 DP table 을 n - 1 부터 채우면 그 이하의 값들을 참조할 때 문제가 생깁니다

n - 1 이하의 숫자들에 대해서 DP table 값을 채워주니 잘 통과가 되네요!

아래는 통과한 소스와 수정한 부분입니다

chjiiwon30   5년 전

zxcvber님 정말 감사합니다ㅠㅠ 속시원히 해결되서 너무 기분좋아요ㅠㅠㅠㅠㅜ공부열심히할게요흑흑

댓글을 작성하려면 로그인해야 합니다.