jasaeong93   4년 전

1) 이 순서로 코드를 작성하면 정답이 나오는데 

dfs(int check, int cnt  , int sum)

{ ....

if (cnt == 3)

{

if (sum <= M)

ans = max(ans, sum);

return;

}

if (sum > M || check>=N) return;

....

}

2) 이 순서로 하면 정답이 나오지 않습니다...

dfs(int check, int cnt , int sum)

{ ....

if (sum > M || check>=N) return;

if (cnt == 3)

{

if (sum <= M)

ans = max(ans, sum);

return;

}

....

}

djm03178   4년 전

마지막 카드를 선택하는 경우에는 check가 N인 상태에서 답을 갱신해야 하니 갱신하는 문장이 먼저 있어야 합니다.

jasaeong93   4년 전

감사합니다!!

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