Cod sursa(job #29925)

Utilizator vmaneavmanea vmanea Data 11 martie 2007 19:32:56
Problema Grupuri Scor 12
Compilator c Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <stdio.h>
#include <stdlib.h>
#define nmax 1000000

int K, N, i, ok, k, aux, j, *c, *d;

int A[nmax];

int fct(const void *, const void *);

int main(void)
{
	freopen("grupuri.in", "r", stdin);
	freopen("grupuri.out", "w", stdout);

	scanf("%d%d", &K, &N);
	for (i = 1; i <= N; ++i)
		scanf("%d", &A[i]);

	for (ok = 1; ok; ++k)
	{
		for (i = N; i >= N - K + 1; --i)
		{
			--A[i];
//			aux = A[i];
//			for (j = i - 1; j >= 1 && A[j] > aux; A[j + 1] = A[j], j--);
//			A[j + 1] = aux;
		}

		qsort((void *)A, N + 1, sizeof(int), fct);

		ok = A[N - K + 1];

	}

	printf("%d\n", k);
	return 0;
}

int fct (const void *a, const void *b)
{
	c = (int *)a;
	d = (int *)b;

	if ((*c) < (*d)) return -1;
	if ((*c) > (*d)) return 1;
	return 0;
}