C 조합 썸네일형 리스트형 C언어 순열과 조합 최근 문제를 풀다가 계속해서 순열과 조합 문제를 보게 되었는데, 제가 재귀가 약하다보니 항상 문제를 푸는데 어려움이 있었습니다. 그래서 이번에 정리를 잘해서 다시는 찾아보는 일이 없도록 만들고자 포스팅을 하려 합니다. 우선, 순열입니다. #include int arr[4] = { 1, 2, 3, 4 }; int len = 4; void swap(int a, int b) { int temp = arr[a]; arr[a] = arr[b]; arr[b] = temp; } void permu(int N) { if (N == 3) { for (int i = 0; i < 4; i++) { printf("%d", arr[i]); } printf("\n"); } else { for (int i = N; i < 4; i.. 더보기 2817. 부분 수열의 합 - D3 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV7IzvG6EksDFAXB 불러오는 중입니다... 이 문제는 조합과 백트래킹을 필요로 하는 문제입니다. 그럼 바로 보도록 하겠습니다. N개의 숫자를 조합해서 K의 수를 표현할 수 있는 가지수를 나타내는 문제입니다. 그렇다면 당연히 조합이 필요하겠죠? 또한, N이 20을 넘어가기 때문에 1 ~ 20개의 숫자를 조합으로 구하려고 하는 것은 대단히 오래걸리기에 백트래킹을 사용해야합니다. 지금까지 더한 합이 K를 넘기면 안된다는 조건으로요. #include #include void combi(int* arr, int st, int cnt, int temp, int dept.. 더보기 이전 1 다음