fork download
  1. #include <iostream>
  2. #include <bits/stdc++.h>
  3.  
  4. using namespace std;
  5.  
  6. void printPattern(string str, int i){
  7. if(i == str.size()){
  8. cout << str << "\n";
  9. return;
  10. }
  11.  
  12. if(str[i] == '?'){
  13. for(int k=0; k<=1; ++k){
  14. str[i] = k + '0';
  15. printPattern(str, i+1);
  16. str[i] = '?'; //Why backtrack?
  17. }
  18. return;
  19. }
  20.  
  21. printPattern(str, i+1);
  22. }
  23.  
  24. int main()
  25. {
  26. string str = "1?11?00?1?";
  27.  
  28. printPattern(str, 0);
  29. }
Success #stdin #stdout 0s 16064KB
stdin
Standard input is empty
stdout
1011000010
1011000011
1011000110
1011000111
1011100010
1011100011
1011100110
1011100111
1111000010
1111000011
1111000110
1111000111
1111100010
1111100011
1111100110
1111100111