标签:ati -- using 问题 return malloc *** else 条件
/***********************************
*有0~n-1共n个数,从其中任取k个数,
*已知这k个数的和能被n整除,求这样的
*k个数的组合的个数sum,
*输入:n,k
*输出:符合条件的个数sum
************************************/
#include <malloc.h>
#include <iostream>
#include <stdio.h>
using namespace std;
int k, *a, n;
int sum = 0;//记录符合条件的个数
void combination(int p, int m)
{
int i;
int temp;
if (m < k)
{
for (i = p - 1; i >= k - m - 1; i--)
{
a[m] = i;
combination(i, m + 1);
}
}
else
{
temp = 0;
for (i = 0; i < k; i++)
{
temp += a[i];
cout << a[i];
}
if (temp%n == 0)
{
sum++;
}
cout << endl << temp << endl;
}
}
int main()
{
// int n;
scanf_s("%d%d", &n, &k);
a = (int*)malloc(sizeof(int)*k);
combination(n, 0);
cout << sum << endl;
system("pause");
return 0;
}
标签:ati -- using 问题 return malloc *** else 条件
原文地址:http://www.cnblogs.com/Wlnhome/p/7040636.html