2 분 소요

🗒️ 1182번) 부분수열의 합

#include <iostream>
using namespace std;

int num[20];
int N, S;

int GetSubCount(int n, int sum)
{
	if (n == N)
	{
		if (sum == S)
			return 1;
		else
			return 0;
	}

	return GetSubCount(n + 1, sum + num[n]) + GetSubCount(n + 1, sum);
}

int main()
{
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	cin >> N >> S;
	for (int i = 0; i < N; i++)
		cin >> num[i];

	int res = GetSubCount(0, 0);
	if (S == 0)
		res -= 1;
	cout << res;

	return 0;
}

카테고리:

업데이트:

댓글남기기