Advertisement
Anwar_Rizk

Untitled

Jul 10th, 2021
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.34 KB | None | 0 0
  1. #include <iostream>
  2. #include <iomanip>
  3. #include <algorithm>
  4. #include <string>
  5. #include <cmath>
  6. #include <vector>
  7. #define ll long long
  8. #define ull unsigned long long
  9. #define PI 3.141592653
  10. #define Mod 1'000'000'007
  11. #define EPS 1e-9
  12. #define endl "\n"
  13. #define fixed(n) cout << fixed << setprecision(n)
  14. #define read(arr, n) for(int i=0; i<n && cin >> arr[i]; i++)
  15. #define print(arr, n) for(int i=0; i<n && cout << arr[i] << " "; i++)
  16. #define read_2d(matrix, r, c) for(int i=1; i<=r; i++) for(int j=1; j<=c && cin >> matrix[i][j]; j++);
  17. #define cout_2d(matrix, r, c) for(int i=1; i<=r; i++, cout << "\n") for(int j=1; j<=c && cout << matrix[i][j] << " "; j++);
  18. #define FAST ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
  19. using namespace std;
  20.  
  21. int max(vector <int> v){
  22.     return *max_element(v.begin(), v.end());
  23. }
  24.  
  25. int min(vector <int> v){
  26.     return *min_element(v.begin(), v.end());
  27. }
  28.  
  29. bool isprime(int n){
  30.     if(n == 1)      return false;
  31.     for(int i=2; i<=sqrt(n); i++)
  32.         if(n%i == 0) return false;
  33.  
  34.     return true;
  35. }
  36. int prime(vector <int> v){
  37.     int cnt_prime = 0;
  38.     for(int i=0; i<v.size(); i++)
  39.          if(isprime(v[i]))   cnt_prime++;
  40.  
  41.     return cnt_prime;
  42. }
  43.  
  44. int palindrome(vector <int> v){
  45.     int cnt_pldrm = 0;
  46.     for(auto i : v)
  47.         if(i < 10 || i%10 == i/10 )
  48.             cnt_pldrm++;
  49.  
  50.     return cnt_pldrm;
  51. }
  52.  
  53. int max_divisor(vector <int> v){
  54.     vector <int> v2(v.size(), 2);
  55.  
  56.     for(int i=0; i<v.size(); i++)
  57.         for(int j=2; j<=v[i]/2; j++)
  58.              if(v[i]%j == 0)    v2[i]++;
  59.  
  60.     int M = *max_element(v2.begin(), v2.end());
  61.     vector <int> Max(0);
  62.     for(int m=0; m<v2.size(); m++)
  63.          if(v2[m] == M)     Max.push_back(v[m]);
  64.  
  65.     return *max_element(Max.begin(), Max.end());
  66. }
  67. int main()
  68. {   FAST
  69.         int n;                                                  cin >> n;
  70.         vector <int> vec(n);                                    read(vec, n);
  71.  
  72.         cout << "The maximum number : " << max(vec) << "\n";
  73.         cout << "The minimum number : " << min(vec) << "\n";
  74.         cout << "The number of prime numbers : " << prime(vec) << "\n";
  75.         cout << "The number of palindrome numbers : " << palindrome(vec) << "\n";
  76.         cout << "The number that has the maximum number of divisors : " << max_divisor(vec) << "\n";
  77.  
  78.     return 0;
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement