Cod sursa(job #1897096)

Utilizator raduamaistroaieRadu Amaistroaie raduamaistroaie Data 1 martie 2017 09:56:44
Problema Ubuntzei Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.38 kb
#include <bits/stdc++.h>
#define MINN 2000000001
using namespace std;

short cer;
int n, k, x, a[ 50 ], v[ 50 ], y = 1, nr;

bool des(int a, int b){
    if (a > b)
        return true;
    return false;}

int main(){
    ifstream cin("triunghi5.in");
    ofstream cout("triunghi5.out");
    cin >> cer >> n >> k;
    if (cer == 1){
            long long minn = MINN;
            int a, b, c;
            for (int i = 0; i < n; i++){
             cin >> x;
            if (x < minn)
                minn = x;
            }
            a = b = minn;
            cout << a << " " << b;
            for (int i = 3; i <= k; i++){
                    c = a + b;
                    cout << " " << c;
                    a = b;
                    b = c;
            }
    }
    else{
            for (int i = 0; i < n; i++)
            cin >> a[ i ];
            sort(a, a + n, des);
         while (a[ 0 ] + y < a[ 1 ])
            y++;
         cout << y << " ";
         v[ nr ] = y;
         ++nr;
          for (int i = 0; nr <= k; i++)
            if (a[ i ] + v[ nr ] < a[ i + 1] && v[ nr ] < v[ nr - 1] + v[ nr - 2]){
              v[ nr ] += 1;
             ++nr;
            }
            else{
              v[ nr ] = a[ i ];
              ++nr;
            }
         for (int i = 0 ; i < k - 1 ;i++)
            cout << v[ i ] << " ";
    }
}