if (cur_cnt >= max)
{
res++;
return;
}
이 부분을 생각해봅시다.
max 이상이면 바로 끊는데, 지금 짜신 코드를 보면 아마 원하신 것은
( 전체를 채점했을 때 정확히 5점인 것의 개수) + (정확히 6점인 것의 개수) + ... + (정확히 10점인 것의 개수)
같은데,
(처음부터 어떤 문제까지 채점했을 때 max점인 것의 개수) 들을 더해주고 있네요.
정답이 1 2 3 4 5 1 2 3 4 5 일 때
순서대로 1 2 3 4 5로 방문하시면 5점이 되면서 나가게 되는데,
이 뒤의 숫자에 따라 서로다른 조합이 나올 수 있기 때문에 (1 2 3 4 5 2 1 5 3 4, 1 2 3 4 5 5 4 2 3 1 등...)
답이 안나옵니다.
그리고
new_same_cnt = 0으로 하셨는데,
(j == pre_value)가 아니라면 다음 함수의 same_cnt가 0으로 들어가게 됩니다.
이전 숫자와 같은 숫자는 한개부터 시작하겠죠?
qktlf789456 3년 전
다른 Brute Force 는 방법을 알고있지만, 이 방법으로도 충분히 풀리겠다고 생각했는데 어디부분을 빠뜨렸는지 엉뚱한답이 나오네요.. 어떤식으로 접근을 잘못한걸까요?