Advertisement
Guest User

Untitled

a guest
Sep 24th, 2017
368
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.63 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define fill(x,y) memset(x,y,sizeof(x))
  5. #define fi first
  6. #define se second
  7. #define sz(x) ((int) (x).size())
  8. #define all(x) (x).begin(), (x).end()
  9. #define sqr(x) ((x) * (x))
  10. #define sqrt(x) sqrt(abs(x))
  11. #define mp make_pair
  12. #define pb push_back
  13. #define read(x) scanf("%d",&x)
  14. #define read2(x,y) scanf("%d%d",&x,&y)
  15. #define read3(x,y,z) scanf ("%d%d%d",&x,&y,&z)
  16.  
  17. typedef long long ll;
  18. typedef string s;
  19. typedef pair<int,int> pii;
  20. typedef pair<int,string> pis;
  21. typedef pair<string,int> psi;
  22. typedef pair<string,string> pss;
  23. typedef vector<int> vi;
  24. typedef vector<vi> vvi;
  25. typedef vector<pii> vpii;
  26. typedef vector<vector<ll> > matrix;
  27.  
  28. const ll oo = 1e18;
  29.  
  30. const double EPS = (1e-7);
  31. int dcmp(double x, double y) {  return fabs(x-y) <= EPS ? 0 : x < y ? -1 : 1; }
  32.  
  33. void intimain(){
  34.     ios_base::sync_with_stdio(0);
  35. //  freopen("in.txt","r",stdin);
  36. //  freopen("out.txt","w",stdout);
  37. }
  38.  
  39. vector<ll> ne,ps,ls ;
  40.  
  41. int main(){
  42.    intimain();
  43.    int n ;
  44.    ll a,b,c ;
  45.    cin >> n >> a >> b >> c ;
  46.   ls.pb(a);ls.pb(b);ls.pb(c);
  47.    for(int i=0;i<n;i++){
  48.            ll num ; cin >> num ;
  49.            if(num<0)ne.push_back(num);
  50.            else if (num>0)ps.push_back(num);
  51.            else {ne.push_back(num);ps.push_back(num);}
  52.    }
  53.    sort(all(ne));
  54.    sort(all(ps));
  55.    ll ans = 0 ;
  56.    for(int i=0;i<3;i++){
  57.         if(ls[i]<0){
  58.             if(!ne.empty())ans+=ne[0]*ls[i];
  59.             else ans+=ps[0]*ls[i];
  60.         }
  61.         else if (ls[i]>0){
  62.             if(!ps.empty())ans+=ps.back()*ls[i];
  63.             else ans+=ne.back()*ls[i];
  64.         }
  65.    }
  66.    cout << ans ;
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement