Advertisement
dahao

BAI5

Feb 22nd, 2020
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.58 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. typedef long long ll;
  6. typedef long double ld;
  7. typedef unsigned long long ull;
  8. typedef pair <ll, ll> ii;
  9. typedef pair <ll, ii> iii;
  10.  
  11. const ll N = 1e6 + 5;
  12. const ll INF = 1e9 + 7;
  13.  
  14. const char mau[10][7] = { "khong ", "mot ", "hai ", "ba ", "bon ", "nam ", "sau ", "bay ", "tam ", "chin " };
  15.  
  16. ll n, c[10];
  17.  
  18. void get(int vt) {
  19.     if (vt == 7) return;
  20.     switch (vt) {
  21.     case 1: cout << "trieu ";
  22.         break;
  23.     case 4:
  24.         if (!((c[vt] == 0) && (c[vt - 1] == 0) && (c[vt - 2] == 0)))
  25.         cout << "nghin ";
  26.         break;
  27.     case 2:
  28.         if (!(((c[vt + 2] == 0) && (c[vt + 1] == 0)) && (c[vt] == 0)))
  29.             cout << "tram ";
  30.         break;
  31.     case 5:
  32.         if (!(((c[vt + 2] == 0) && (c[vt + 1] == 0)) && (c[vt] == 0)))
  33.             cout << "tram ";
  34.         break;
  35.     case 3: case 6:
  36.         if (c[vt] != 0)
  37.             cout << "muoi ";
  38.         else {
  39.             if (c[vt + 1] != 0)
  40.                 cout << "le ";
  41.         }
  42.         break;
  43.     }
  44. }
  45.  
  46. int main() {
  47.     //freopen("CAU5.INP", "r", stdin);
  48.     //freopen("CAU5.OUT", "w", stdout);
  49.     ios_base::sync_with_stdio(false);
  50.     cin.tie(NULL);
  51.     cout.tie(NULL);
  52.     cin >> n;
  53.     //********************
  54.     for (ll i = 1; i <= 7; i++) c[i] = 0;
  55.     ll i = 7;
  56.     while (n != 0) {
  57.         c[i] = n % 10;
  58.         n = n / 10;
  59.         i--;
  60.     }
  61.     ll vtd = 8;
  62.     for (ll i = 1; i <= 7; i++)
  63.         if (c[i] != 0) {
  64.             vtd = i;
  65.             break;
  66.         }
  67.     if (vtd == 8) {
  68.         cout << "khong";
  69.         exit(0);
  70.     }
  71.     for (ll i = vtd; i <= 7; i++) {
  72.         switch (c[i]) {
  73.         case 1: case 2: case 3: case  4: case  6: case 7: case 8: case 9:
  74.             if (!((c[i] == 1) && ((i == 6) || (i == 3))))
  75.                 cout << mau[c[i]];
  76.             get(i);
  77.             break;
  78.         case 5:
  79.             if (i == 7) {
  80.                 if (c[i - 1] == 0)
  81.                     cout << "nam ";
  82.                 else
  83.                     cout << "lam ";
  84.             }
  85.             else {
  86.                 if (i == 4) {
  87.                     if (c[i - 1] == 0)
  88.                         cout << "nam ";
  89.                     else
  90.                         cout << "lam ";
  91.                 }
  92.                 else
  93.                     cout << mau[c[i]];
  94.                 get(i);
  95.             }
  96.             break;
  97.         case 0:
  98.             if (((i == 5) || (i == 2)) && ((c[i + 2] != 0) || ((c[i + 1] != 0))))
  99.                 cout << mau[c[i]];
  100.             get(i);
  101.             break;
  102.         }
  103.     }
  104.     return 0;
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement