Pagini recente » Cod sursa (job #1296575) | Cod sursa (job #2458176) | Cod sursa (job #1685745) | Cod sursa (job #568740) | Cod sursa (job #29925)
Cod sursa(job #29925)
#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;
}