部分和问题
#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; }
版权声明:本文为博主原创文章,未经博主允许不得转载。