Advertisement
Graf_Rav

Danov1802 27.2

May 25th, 2018
243
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.02 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main(){
  6.     int n;
  7.     cin>>n;
  8.    
  9.     int sum1=-0x80000000, sum2=-0x80000000, sum3=-0x80000000;
  10.     int sum1Ch=-0x80000000, sum2Ch=-0x80000000, sum3Ch=-0x80000000;
  11.    
  12.     int a, b, c;
  13.     cin>>a>>b>>c;
  14.    
  15.     if(a%2==0){
  16.         sum1Ch=a;
  17.     }
  18.     else{
  19.         sum1=a;
  20.     }
  21.    
  22.     if(b%2==0){
  23.         sum2Ch=b;
  24.     }
  25.     else{
  26.         sum2=b;
  27.     }
  28.    
  29.     if(c%2==0){
  30.         sum3Ch=c;
  31.     }
  32.     else{
  33.         sum3=c;
  34.     }
  35.    
  36.     for(int i=1;i<n;i++){
  37.         cin>>a>>b>>c;
  38.        
  39.         int sum1_1=-0x80000000;
  40.         int sum1Ch_1=-0x80000000;
  41.         int sum2_1=-0x80000000;
  42.         int sum2Ch_1=-0x80000000;
  43.         int sum3_1=-0x80000000;
  44.         int sum3Ch_1=-0x80000000;
  45.        
  46.         if(a%2==0){
  47.             if(sum1!=-0x80000000){sum1_1=sum1+a;}
  48.             if(sum1Ch!=-0x80000000){sum1Ch_1=sum1Ch+a;}
  49.             if(sum2!=-0x80000000){sum1_1=max(sum1_1, sum2+a);}
  50.             if(sum2Ch!=-0x80000000){sum1Ch_1=max(sum1Ch_1, sum2Ch+a);}
  51.         }
  52.         else{
  53.             if(sum1Ch!=-0x80000000){sum1_1=sum1Ch+a;}
  54.             if(sum1!=-0x80000000){sum1Ch_1=sum1+a;}
  55.             if(sum2Ch!=-0x80000000){sum1_1=max(sum1_1, sum2Ch+a);}
  56.             if(sum2!=-0x80000000){sum1Ch_1=max(sum1Ch_1, sum2+a);}
  57.         }
  58.        
  59.         if(c%2==0){
  60.             if(sum3!=-0x80000000){sum3_1=sum3+c;}
  61.             if(sum3Ch!=-0x80000000){sum3Ch_1=sum3Ch+c;}
  62.             if(sum2!=-0x80000000){sum3_1=max(sum3_1, sum2+c);}
  63.             if(sum2Ch!=-0x80000000){sum3Ch_1=max(sum3Ch_1, sum2Ch+c);}
  64.         }
  65.         else{
  66.             if(sum3Ch!=-0x80000000){sum3_1=sum3Ch+c;}
  67.             if(sum3!=-0x80000000){sum3Ch_1=sum3+c;}
  68.             if(sum2Ch!=-0x80000000){sum3_1=max(sum3_1, sum2Ch+c);}
  69.             if(sum2!=-0x80000000){sum3Ch_1=max(sum3Ch_1, sum2+c);}
  70.         }
  71.        
  72.         if(b%2==0){
  73.             if(sum1!=-0x80000000){sum2_1=sum1+b;}
  74.             if(sum1Ch!=-0x80000000){sum2Ch_1=sum1Ch+b;}
  75.            
  76.             if(sum2!=-0x80000000){sum2_1=max(sum2_1, sum2+b);}
  77.             if(sum2Ch!=-0x80000000){sum2Ch_1=max(sum2Ch_1, sum2Ch+b);}
  78.            
  79.             if(sum3!=-0x80000000){sum2_1=max(sum2_1, sum3+b);}
  80.             if(sum3Ch!=-0x80000000){sum2Ch_1=max(sum2Ch_1, sum3Ch+b);}
  81.         }
  82.         else{
  83.             if(sum1Ch!=-0x80000000){sum2_1=sum1Ch+b;}
  84.             if(sum1!=-0x80000000){sum2Ch_1=sum1+b;}
  85.            
  86.             if(sum2Ch!=-0x80000000){sum2_1=max(sum2_1, sum2Ch+b);}
  87.             if(sum2!=-0x80000000){sum2Ch_1=max(sum2Ch_1, sum2+b);}
  88.            
  89.             if(sum3Ch!=-0x80000000){sum2_1=max(sum2_1, sum3Ch+b);}
  90.             if(sum3!=-0x80000000){sum2Ch_1=max(sum2Ch_1, sum3+b);}
  91.         }
  92.        
  93.         sum1=sum1_1;
  94.         sum2=sum2_1;
  95.         sum3=sum3_1;
  96.         sum1Ch=sum1Ch_1;
  97.         sum2Ch=sum2Ch_1;
  98.         sum3Ch=sum3Ch_1;
  99.     }
  100.     int ans=max(sum1Ch, max(sum2Ch, sum3Ch));
  101.     if(ans==-0x80000000){
  102.         cout<<"Doesnt exist";
  103.     }
  104.     else{
  105.         cout<<ans;
  106.     }
  107. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement