fork(1) download
  1. #include <cstdio>
  2. using namespace std;
  3.  
  4. void recur_start(int len, int n);
  5. void recur_process(char *buffer, int len, int start, int n);
  6.  
  7. int main() {
  8. recur_start(7, 3);
  9.  
  10. return 0;
  11. }
  12.  
  13. void recur_start(int len, int n) {
  14. char *buffer = new char[len + 1]; buffer[len] = 0;
  15.  
  16. recur_process(buffer, len, 0, n);
  17.  
  18. delete[] buffer;
  19. }
  20.  
  21. void recur_process(char *buffer, int len, int start, int n) {
  22. if(start == len) {
  23. if(!n)
  24. puts(buffer);
  25. return;
  26. }
  27.  
  28. if(n) {
  29. buffer[start] = '1';
  30. recur_process(buffer, len, start + 1, n - 1);
  31. }
  32.  
  33. buffer[start] = '0';
  34. recur_process(buffer, len, start + 1, n);
  35. }
Success #stdin #stdout 0s 3456KB
stdin
Standard input is empty
stdout
1110000
1101000
1100100
1100010
1100001
1011000
1010100
1010010
1010001
1001100
1001010
1001001
1000110
1000101
1000011
0111000
0110100
0110010
0110001
0101100
0101010
0101001
0100110
0100101
0100011
0011100
0011010
0011001
0010110
0010101
0010011
0001110
0001101
0001011
0000111