Cod sursa(job #461642)

Utilizator AndreiRSStatescu Andrei Rares AndreiRS Data 8 iunie 2010 07:50:11
Problema Grupuri Scor 28
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <stdio.h>
#include <algorithm>
using namespace std;
#define DIM 100002

int A[DIM];
int N, K, DIF, CNT;
int i, j;

int main (){
	
	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]);
	
	while ( A[N-K+1] ){
		DIF = A[N-K+1] - A[N-K] + 1;
		if (A[N-K] == 0) 
			DIF = A[N-K+1];
		
		for (j=N-K+1; j<=N; j++)
			A[j] -= DIF;
		
		CNT += DIF;
		
		sort (A+1, A+N+1);
	}
	
	printf ("%d", CNT);
	
	return 0;
}