artemgf

Произведение цифр

May 1st, 2017
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.66 KB | None | 0 0
  1. #include <iostream>
  2. #include <conio.h>
  3. #include <string>
  4. #include <math.h>
  5. #include <algorithm>
  6. #include <vector>
  7. #include <set>
  8. #include <map>
  9. #include <sstream>
  10. #include <queue>
  11. #include <stdint.h>
  12.  
  13. using namespace std;
  14.  
  15. long long getQforN(long long N)
  16. {
  17.     if (N == 0)
  18.         return 10;
  19.     else if (N == 1)
  20.         return 1;
  21.  
  22.     long long Q = 0;
  23.     long long p = 1;
  24.  
  25.     for (long long div = 9; div > 1; div--)
  26.     {
  27.         while ((N%div) == 0)
  28.         {
  29.             Q += p * div;
  30.             p = p * 10;
  31.             N /= div;
  32.         }
  33.     }
  34.  
  35.     if (N == 1)
  36.         return Q;
  37.     else
  38.         return -1;
  39. }
  40.  
  41. int main()
  42. {
  43.     long long N;
  44.     cin >> N;
  45.     cout << getQforN(N) << std::endl;
  46.  
  47.     _getch();
  48.     return 0;
  49. }
Advertisement
Add Comment
Please, Sign In to add comment