skins346   3년 전

단순한 조합문제로 생각하고 풀었는데 

어떤 반례가 있을까요? 

lucidash   3년 전

N = 1, M = 1 일 때     정답은 1인데   위 코드는 0이 나올 것 같네요. 

kyhdudgns113   3년 전

solve 함수에서 N = 1, M = 1 일때

for (int i = 0; i < M; i++){
d[i][i] = 1;
d[i][0] = 1;

}

이 for 문을 실행시키지 않아서 d[1][1] 이 기본값인 0으로 들어갑니다.

for (int i = 0; i <= M; i++){
d[i][i] = 1;
d[i][0] = 1;
}

로 바꿔주시면 되겠습니다.


kyhdudgns113   3년 전

아 정확하게 말하자면 저 for 문이 i 가 0까지만 돌고 1일때는 돌지 않아서, d[1][1] 의 값을 1로 만들어주지 않는다는 말입니다.

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