Advertisement
Guest User

Untitled

a guest
May 13th, 2017
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.02 KB | None | 0 0
  1. #include <iostream>
  2. #include <locale.h>
  3.  
  4. using namespace std;
  5.  
  6. void bubbleSort(int a []) {
  7.     int t;
  8.     for (int i = 0; i < 2; i++)
  9.         for (int j = 0; j < 2; j++) {
  10.             if (a[j] > a[j + 1]) {
  11.                 t = a[j];
  12.                 a[j] = a[j + 1];
  13.                 a[j + 1] = t;
  14.             }
  15.         }
  16. }
  17.  
  18. int main() {
  19.     freopen("r.txt", "r", stdin);
  20.     freopen("w.txt", "w", stdout);
  21.  
  22.     const int sMax = 10000;     // наибольшее возможное исходное число
  23.     int a[3];                   // тройки
  24.     int n;                      // кол-во троек
  25.     int tmp;
  26.     int dMin = sMax + 1;
  27.     int s = 0;
  28.  
  29.     cin >> n;  
  30.     for (int i = 0; i < n; i++) {
  31.         for (int j = 0; j < 3; j++)
  32.             cin >> a[j];
  33.        
  34.         bubbleSort(a);          // сортируем по возрастанию тройки
  35.        
  36.         s += a[2];
  37.        
  38.         tmp = a[2] - a[0];
  39.         if (tmp % 4 != 0 && tmp < dMin)
  40.             dMin = tmp;
  41.            
  42.         tmp = a[2] - a[1];
  43.         if (tmp % 4 != 0 && tmp < dMin)
  44.             dMin = tmp;
  45.     }
  46.    
  47.     if (s % 4 == 0) {
  48.         if (dMin > sMax)
  49.             s = 0;
  50.         else
  51.             s -= dMin;
  52.     }
  53.    
  54.     cout << s;
  55.    
  56.     return 0;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement