fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. long long n,k;
  4. string s;
  5. void backtrack(long long pos, long long val)
  6. {
  7. if(pos==n) // đến số n
  8. {
  9. cout << s << "\n";
  10. return;
  11. }
  12. for (long long i=!(n-pos>k-val); i<=(k-val>0); i++)
  13. {
  14.  
  15. s[2*pos]=char(i+'0');
  16. s[2*pos+1]=' ';
  17. if(i==0)
  18. {
  19. backtrack(pos+1,val);
  20. }
  21. else
  22. {
  23. backtrack(pos+1,val+1);
  24. }
  25.  
  26. }
  27. }
  28. int main()
  29. {
  30. ios_base::sync_with_stdio(0);
  31. cin.tie(0);
  32. cin >> n >> k;
  33. for (long long i=1; i<=2*n+1; i++)
  34. {
  35. s+=' ';
  36. }
  37. backtrack(0,0);
  38. return 0;
  39. }
  40.  
Success #stdin #stdout 0.01s 5320KB
stdin
Standard input is empty
stdout