Cod sursa(job #2025002)

Utilizator osiaccrCristian Osiac osiaccr Data 21 septembrie 2017 19:17:00
Problema Nivele Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <fstream>

using namespace std;

ifstream fin ("nivele.in");
ofstream fout ("nivele.out");

int t, s[100001], k, n;

int main () {
    fin >> t;
    for (int i = 1; i <= t; i++) {
        fin >> n;
        for (int j = 1; j <= n; j++) {
            int x;
            fin >> x;
            if (!k) {
                s[++k] = x;
            }
            else {
                if (x == s[k]) {
                    s[k]--;
                    while (s[k - 1] == s[k]) {
                        s[k] = 0;
                        s[--k]--;
                    }
                }
                else {
                    s[++k] = x;
                }
            }
        }
        if (k == 1 && s[k] == 1)
            fout << "DA\n";
        else
            fout <<"NU\n";
        }
    return 0;
}