Cod sursa(job #1254981)

Utilizator Andrey77Andrei Nitu Andrey77 Data 3 noiembrie 2014 21:17:51
Problema Jocul Flip Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("lumanari.in");
ofstream g("lumanari.out");

int n, nr, zi;
int h[100];
int ok = 0, i;

int main()
{
    f >> n;
    for (int i = 1; i <= n; i++) f >> h[i];

    while(ok == 0){
        ok = 1;
        for (int i = 2; i <= n; i++)
        if (h[i - 1] < h[i])
            {
                swap(h[i - 1], h[i]);
                ok = 0;
            }
    }
    //for (int i = 1; i <= n; i++) g << h[i] << " ";
    //g << endl;

    zi = 0;
    while(ok)
    {
        //for (int i = 1; i <= n; i++) g << h[i] << " ";
        //g << "ziua:" << zi << endl;
        zi++; nr = zi; i = 0, ok = 0;;
        while(nr)
        {
            i++;
            if(h[i]) {h[i]--; nr--;}
            if(!nr) ok = 1;
            if (i > n) break;
        }
    }

    g << zi - 1;
    return 0;
}