fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. void subs(int i,string s,string curr,vector<string>&ans){
  5. if(i == s.length()){
  6. ans.push_back(curr);
  7. return;
  8. }
  9.  
  10. curr.push_back(s[i]);
  11. subs(i+1,s,curr,ans);
  12. curr.pop_back();
  13.  
  14. subs(i+1,s,curr,ans);
  15. }
  16. int main() {
  17. string s;
  18. cin>>s;
  19.  
  20. vector<string>ans;
  21. subs(0,s,"",ans);
  22.  
  23. for(string c : ans){
  24. cout<<c<<" ";
  25. }
  26. return 0;
  27. }
Success #stdin #stdout 0s 5324KB
stdin
abc
stdout
abc ab ac a bc b c