Advertisement
Guest User

Untitled

a guest
Mar 20th, 2019
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.33 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4. int how(int x) {
  5.     switch(x) {
  6.         case 1:
  7.             return 1;
  8.         case 2:
  9.             return 1;
  10.         case 3:
  11.             return 1;
  12.         case 4:
  13.             return 2;
  14.         case 5:
  15.             return 2;
  16.         case 6:
  17.             return 3;
  18.         case 7:
  19.             return 4;
  20.         case 8:
  21.             return 4;
  22.         case 9:
  23.             return 5;
  24.         case 0:
  25.             return 1;
  26.     }
  27.     return 0;
  28. }
  29.  
  30. int main() {
  31.     int k;
  32.     unsigned long long int n;
  33.     vector <int> a;
  34.     cin >> k;
  35.     for (int i = 0; i < k; ++i) {
  36.         a.clear();
  37.         cin >> n;
  38.         unsigned long long ans = 0;
  39.         if (n < 10) {
  40.             cout << how(n) << endl;
  41.             continue;
  42.         }
  43.         while (n > 0) {
  44.             a.push_back(n % 10);
  45.             n /= 10;
  46.         }
  47.         unsigned long long f = 1;
  48.         for (int j = 0; j < a.size() - 1; ++j)
  49.             f *= how(a[j]);    
  50.        if ((a.back() == 1) || (a.back() == 2) || (a.back() == 3) || (a.back() == 5) || (a.back() == 8))
  51.                f = 0;
  52.         ans += f;
  53.         a.back()--;
  54.         f = how(a.back());
  55.         for (int j = 0; j < a.size() - 1; ++j) {
  56.             f *= 5;
  57.         }
  58.         ans += f;
  59.         cout << ans << endl;
  60.     }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement