fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int n , k;
  4. vector<vector<int>> v;
  5. int X[1000001];
  6. void khoitao(){
  7. cin >> n >> k;
  8. }
  9. void Try(int i , int bd , int sum){
  10. for(int j = bd ; j <= 9 ; j++){
  11. X[i] = j ;
  12. if(i == k && sum + j == n){
  13. vector<int> tmp(X+1,X+k+1);
  14. v.push_back(tmp);
  15. }
  16. else if(i < k && sum + j <= n){ // Fixing the condition
  17. Try(i+1,j+1,sum+j);
  18. }
  19. }
  20. }
  21. int main(){
  22. khoitao();
  23. Try(1,1,0);
  24. if(v.empty()){
  25. cout << "NOT FOUND";
  26. return 0 ;
  27. }
  28. sort(v.begin(),v.end());
  29. for(vector<int> p : v){
  30. for(int i = 0 ; i < p.size() ;i++){
  31. if(i < p.size() - 1){
  32. cout << p[i] << " + ";
  33. }
  34. else cout << p[i] << endl;
  35. }
  36. }
  37. }
  38.  
Success #stdin #stdout 0s 5308KB
stdin
38 7
stdout
1 + 2 + 5 + 6 + 7 + 8 + 9
1 + 3 + 4 + 6 + 7 + 8 + 9
2 + 3 + 4 + 5 + 7 + 8 + 9