Obtain the child array equal to or greater than 60 from the array {10, 20, 30, 40, 50, 60.
Boolean vectors such as {0, 1, 0, 0} are used to represent the results.
# Include <iostream> # include <vector> # include <algorithm> using namespace STD; bool validorder (vector <int >:: iterator it1, vector <int >:: iterator it2, int * s, int total) {int nsize = it2-it1; int sum = 0; For (INT I = 0; I <nsize; I ++) {If (* (it1 + I) = 1) sum + = s [I];} return sum = total;} void main () {int X [] = {10, 20, 30, 40, 50, 60}; int y = 60; int n = sizeof (X)/sizeof (INT ); vector <int> V (6); For (int K = 0; k <n; k ++) {If (n-k-2> = 0) Fill (v. begin (), V. begin () + n-k-2, 0); fill (v. begin () + n-k-1, V. end (), 1); do {If (validorder (v. begin (), V. end (), x, y) {copy (v. begin (), V. end (), ostream_iterator <int> (cout, "\ t"); cout <Endl ;}} while (next_permutation (v. begin (), V. end ()));}}