给定一个数t,以及n个整数,在这n个数中找到和为t的所有组合
#include <cstdlib> #include <iostream> using namespace std; int data[]={4,3,2,2,1,1}; int t=4; int n=6; int main(int argc, char *argv[]) { for(int i=0;i<6;++i) { if(t==data[i]) cout<<data[i]<<endl; } for(int i=0;i<6;++i){ for(int j=i+1;j<6;++j){ if(t==data[i]+data[j]) cout<<data[i]<<"+"<<data[j]<<endl; } } for(int i=0;i<6;++i){ for(int j=i+1;j<6;++j) { for(int k=j+1;k<6;++k){ if(t==data[i]+data[j]+data[k]) cout<<data[i]<<"+"<<data[j]<<"+"<<data[k]<<endl; } } } system("PAUSE"); return EXIT_SUCCESS; }
写的很烂,思路也太简单。。仅作参考