#include using namespace std; vector digits = {1,1,2,6,24,120,720,5040,40320,362880}; void getSum(long long int x, vector &numbers){ if(x==0) return; for(long long int i=digits.size()-1; i>=0;i--){ if ( x - digits[i] >= 0){ numbers.emplace_back(i); getSum(x-digits[i],numbers); return; } } } int main() { long long int X; cin>>X; vector numbers; getSum(X,numbers); sort(numbers.begin(),numbers.end()); for(auto i : numbers){ cout<