Cod sursa(job #364741)

Utilizator ProcopliucProcopliuc Adrian Procopliuc Data 16 noiembrie 2009 21:03:07
Problema Nivele Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
# include <stdio.h>
int f[100000],t,n,k,s,ok,x,max,i,j;

  int main ()
  {
	freopen ("nivele.in","r",stdin);
	freopen ("nivele.out","w",stdout);
	scanf ("%i",&t);

	for (k=1;k<=t;k++)
	{

	max=0;
		scanf ("%i",&n);
		for (i=1;i<=n;i++)
		{
			scanf ("%i",&x);
			f[x]++;
			if (max<x)
				max=x;
		}

		ok=0;
		s=1;
		for (i=1;i<=max;i++)
		{
			s=s-f[i];
			if (s==0)
                              {
			for (j=i+1;j<=max;j++)
				 if (f[j]!=0)
			       ok=1;

			       }
			 else
			s=s*2;
		}
		if (s!=0)
                 ok=1;
		if (ok==0)
			printf ("DA\n");
		else
			printf ("NU\n");
	}
  return 0;
  }