이해가 안가서 다시 돌려보려는데 오류가 나네요(제 오타인거 같기도하고....).
c++은 예전에 공부해서 잘 기억이 안나는데
무튼 이 코드가 의미하는게 총 주사위 합이 타겟 주사위 합 보다 작거나 클 때 리턴하고
반복문 재귀하면서 값 더하는건가요?
코드 설명 간단히 해주실 수 있을까요?
이해가 안가서 다시 돌려보려는데 오류가 나네요(제 오타인거 같기도하고....).
c++은 예전에 공부해서 잘 기억이 안나는데
무튼 이 코드가 의미하는게 총 주사위 합이 타겟 주사위 합 보다 작거나 클 때 리턴하고
반복문 재귀하면서 값 더하는건가요?
코드 설명 간단히 해주실 수 있을까요?
로직은 별 거 없음. recur(주사위 번호, 해당 주사위 면 숫자, 이전 주사위 면 숫자 포인터, 해당 주사위까지의 합, 주사위 개수, 찾을 합) 이렇게 된 인자 구조인데, 매 재귀에서 현재 주사위까지의 합에서 남은 주사위 개수*6을 더했는데도 목표 합에 모자라거나, 현재 주사위까지의 합에서 남은 주사위 개수*1을 더해도 목표 합에 초과되는 케이스는 거르
주사위 번호가 마지막 주사위가 아니라면 계속해서 다음 주사위 번호에 대해 면 숫자가 1~6인 경우를 재귀 돌리고, 마지막 주사위라면 포인터 따라가면서 현재 케이스에 해당하는 주사위 숫자를 다 출력해주지.
ㄴ어렴풋이 이해는 가는 거 같네요. 감사합니다.
오류 난 건 니 오타. 오류난 줄을 잘 봐봐.
ㄴ 더하기가 빠졌네요. 정말 고맙습니다.
내가 저 코드 귀찮아서 안 고친게 하나 있는데 sizeof NULL은 sizeof(int *)로 고쳐야 정확. 포인터의 크기를 취하고 싶었던 건데 NULL은 (void*)0이 아닌 그냥 0으로 정의하는 컴파일러도 많아서.