部分和问题
#include "stdafx.h"
#include<iostream>
#define MAX 100
using namespace std;
int n=7, k;
int num[100] = { 1, 3, 4, 2, 5, 6, 7 };
bool dfs(int i, int sum)
{
if (i == n)return sum == k;
if (dfs(i + 1, sum))return true;
if (dfs(i + 1, sum + num[i]))return true;
return false;
}
int main()
{
while (cin >> k)
cout << dfs(0, 0) << endl;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

浙公网安备 33010602011771号