artemgf

Магические числа Знайки

Nov 1st, 2017
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.78 KB | None | 0 0
  1. #define _USE_MATH_DEFINES
  2. #include <iostream>
  3. #include <string>
  4. #include <map>
  5. #include <set>
  6. #include <algorithm>
  7. #include <vector>
  8. #include <stdio.h>
  9. #include <cmath>
  10. #include <math.h>
  11. #include <queue>
  12.  
  13. using namespace std;
  14.  
  15. int sum(int n)
  16. {
  17.     string prom = to_string(n);
  18.     int Sum = 0;
  19.     for (int i = 0; i <= prom.size() - 1; i++)
  20.     {
  21.         Sum += prom[i] - '0';
  22.     }
  23.     return Sum;
  24. }
  25. int main()
  26. {
  27.     vector<int>all;
  28.     int n;
  29.     cin >> n;
  30.  
  31.     int i = n;
  32.     int u = n;
  33.     while(u>0)
  34.     {
  35.         if (u - sum(i) < 0)
  36.             i--;
  37.         else
  38.         {
  39.             all.push_back(i);
  40.             u -= sum(i);
  41.             i--;
  42.         }
  43.     }
  44.  
  45.     if (u > 0)
  46.         cout << -1;
  47.     else
  48.     {
  49.         cout << all.size() << endl;
  50.  
  51.         for (auto i = all.begin(); i != all.end(); i++)
  52.         {
  53.             cout << *i << " ";
  54.         }
  55.     }
  56.     system("pause");
  57.     return 0;
  58. }
Advertisement
Add Comment
Please, Sign In to add comment