Advertisement
shibbir001

Untitled

Jun 14th, 2016
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.16 KB | None | 0 0
  1. #include <cstdio>
  2. #include <cstring>
  3. #include<iostream>
  4. #include<cmath>
  5. #include<algorithm>
  6. #include<map>
  7. #include<vector>
  8. #include<set>
  9. using namespace std;
  10. int main()
  11. {
  12.     int ar[6];//,b,c,d,e;
  13.  
  14.     std::map<int,int>m;
  15.     std::set<int>s;
  16.     std::set<int>::iterator it;
  17.     int sum=0;
  18.     for(int i=0;i<5;i++)
  19.     {
  20.         cin>>ar[i];
  21.         s.insert(ar[i]);
  22.         m[ar[i]]++;
  23.         sum+=ar[i];
  24.     }
  25.  
  26.      if(s.size()==1)
  27.      {
  28.          cout<<ar[0]*2<<endl;
  29.          return 0;
  30.      }
  31.     else   if(s.size()==5)
  32.      {
  33.          cout<<sum<<endl;
  34.         return 0;
  35.      }
  36.     else  if(s.size()==2)
  37.      {
  38.  
  39.            it=s.begin();
  40.             int temp1=*it;
  41.             it++;
  42.             int temp2=*it;
  43.             int zsum=0,tsum=0;
  44.             tsum+=temp1*m[temp1];
  45.             zsum+=temp2*m[temp2];
  46.             if(tsum<zsum)
  47.  
  48.             {
  49.                 cout<<tsum<<endl;
  50.                 return 0;
  51.             }
  52.             else
  53.             {
  54.                 cout<<zsum<<endl;
  55.                 return 0;
  56.             }
  57.      }
  58.     else  if(s.size()==4)
  59.      {
  60.         //std::set<int>::iterator it;
  61.          int tsum=0;
  62.          for(it=s.begin();it!=s.end();it++)
  63.          {
  64.              int temp=*it;
  65.              if(m[temp]==1)tsum+=temp;
  66.          }
  67.          cout<<tsum<<endl;
  68.          return 0;
  69.      }
  70.      else if(s.size()==3)
  71.      {
  72.         // std::set<int>::iterator it;
  73.          int tsum=0;
  74.          for(it=s.begin();it!=s.end();it++)
  75.          {
  76.              int temp=*it;
  77.              if(m[temp]==1){tsum+=temp;s.erase(it);}
  78.          }
  79.          //std::set<int>::iterator it;
  80.          if(s.size()==2)
  81.          {
  82.             it=s.begin();
  83.             int temp1=*it;
  84.             it++;
  85.             int temp2=*it;
  86.             int zsum=tsum;
  87.             tsum+=temp1*2;
  88.             zsum+=temp2*2;
  89.             if(tsum<zsum)
  90.             {
  91.                 cout<<tsum<<endl;
  92.                 return 0;
  93.             }
  94.             else
  95.             {
  96.                 cout<<zsum<<endl;
  97.                 return 0;
  98.             }
  99.  
  100.          }
  101.          cout<<tsum<<endl;
  102.          return 0;
  103.      }
  104. return 0;
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement