题目:输入一个n,m,让你在0~ 9中找不同的n个数,相加等于m,问你有多少种可能。
例如:输入2 6,可以选择0+6
,1+5
,2+4
,所以答案是3。
总共就十个数字。也就是1024种情况,暴力二进制枚举即可~
int main()
{
int n, m;
while (cin >> n >> m && n && m)
{
int ans = 0;
for (int i = 0; i < (1 << 10); i++)
{
int sum_1 = 0, sum_2 = 0;
for (int j = 0; j < 10; j++)
{
if (i & (1 << j))
{
sum_1++;
sum_2 += j;
}
}
if (sum_1 == n && sum_2 == m)
ans++;
}
cout << ans << endl;
}
return 0;
}