Advertisement
mhdew

UVa 993

Jan 12th, 2019
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.45 KB | None | 0 0
  1. /*Basic info
  2. Problem : UVa 993
  3. Date : 13-01-19
  4. Author : Shesher
  5. */
  6.  
  7. #include<bits/stdc++.h>
  8.  
  9. using namespace std;
  10.  
  11. ///Template
  12. #define in1()    freopen("C:\\Users\\SHESHER\\Rest\\Desktop\\MY COMPUTER\\Code\\Template\\input.txt", "r", stdin);
  13. #define out1()   freopen("C:\\Users\\SHESHER\\Rest\\Desktop\\MY COMPUTER\\Code\\Template\\output.txt", "w", stdout);
  14.  
  15.  
  16. //Data types
  17. #define lo      long
  18. #define ll      long long
  19. #define llu     unsigned long long
  20.  
  21. //loop
  22. #define f1(i,x,y)   for(int i=x;i<=y;i++)
  23.  
  24. //Constants
  25. #define MAX     100007
  26. #define MOD     10000007
  27. #define PI      acos(-1.0)
  28.  
  29. //STL
  30. #define vout(v)    for(int i=0;i<v.size();i++){cout<<v[i]; if(i==v.size()-1) cout<<endl; else cout<<" ";}
  31.  
  32. //Scan
  33. #define sc(x)    scanf("%d", &x)
  34. #define scl(x)   scanf("%lld", &x)
  35.  
  36. //Print
  37. #define pa(a,i,n)  for(int i=0;i<n;i++){ cout<<a[i]; if(i==n-1) cout<<endl; else cout<<" ";}
  38.  
  39. vector<int> v;
  40. ll mn;
  41. bool f=0;
  42. void div(ll n)
  43. {
  44.     if(n<10){
  45.         v.push_back(n);
  46.         ll num=0;
  47.         for(int i=0;i<v.size();i++){
  48.             num*=10;
  49.             num+=v[i];
  50.         }
  51.         if(!f){
  52.             mn=num;
  53.             f=1;
  54.         }
  55.         else{
  56.             if(num<mn) mn=num;
  57.         }
  58.         v.pop_back();
  59.         return;
  60.     }
  61.  
  62.  
  63.     for(int i=2;i<=9;i++){
  64.         if(i>sqrt(n)) break;
  65.         if(n%i==0){
  66.             v.push_back(i);
  67.             div(n/i);
  68.             v.pop_back();
  69.         }
  70.         // else return;
  71.     }
  72. }
  73.  
  74. int main()
  75. {
  76.     in1();
  77.     out1();
  78.     int n;
  79.     cin>>n;
  80.     while(n--){
  81.         ll x;
  82.         cin>>x;
  83.  
  84.         v.clear();
  85.         f=0;
  86.         mn=-1;
  87.         div(x);
  88.  
  89.         cout<<mn<<endl;
  90.     }
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement