fork download
  1. #include <bits/stdc++.h>
  2. #define task ""
  3. #define ff first
  4. #define ss second
  5. using namespace std;
  6. using ld = long double;
  7. using ull = unsigned long long;
  8. using ll = long long;
  9. using pll = pair <ll, ll>;
  10. using pii = pair <int, int>;
  11. const char el = '\n';
  12. const char sp = ' ';
  13. const ll inf = 1e9; //1e18;
  14. const ll maxN = 2e5 + 5;
  15.  
  16. int t, a;
  17. vector <int> valid_nums;
  18.  
  19. int main ()
  20. {
  21. ios_base::sync_with_stdio(0);
  22. cin.tie(0);
  23. if (fopen(task".inp", "r"))
  24. {
  25. freopen(task".inp", "r", stdin);
  26. freopen(task".out", "w", stdout);
  27. }
  28. valid_nums.push_back(0);
  29. for (int mask = 1;mask < (1 << 9);++mask)
  30. {
  31. int num = 0;
  32. for (int i = 1;i <= 9;++i)
  33. if (mask >> (i - 1) & 1)
  34. num = num * 10 + i;
  35. valid_nums.push_back(num);
  36. }
  37. sort(valid_nums.begin(), valid_nums.end());
  38. if (!(cin >> t)) return 0;
  39. while(t--)
  40. {
  41. cin >> a;
  42. auto it = upper_bound(valid_nums.begin(), valid_nums.end(), a);
  43. --it;
  44. cout << *it << el;
  45. }
  46. return 0;
  47. }
  48.  
Success #stdin #stdout 0.01s 5324KB
stdin
Standard input is empty
stdout
Standard output is empty