Cod sursa(job #189551)

Utilizator GogosheritzuDumitrescu Dragos Gogosheritzu Data 15 mai 2008 16:55:48
Problema Progresii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <stdio.h>
int main ()
{
	freopen ("progresii.in", "r", stdin);
	freopen ("progresii.out", "w", stdout);
	int N, M, K, L, i, P[100001], v[100001], s=0;
	scanf ("%d%d%d%d", &N, &M, &K, &L);
	for (i=1;i<=N; i++){
		scanf("%d", &P[i]);
		v[i]=M;
		if ((L-P[i])%v[i]!=0){
			s=s+(L-P[i])/v[i]+1;
		}
		else{
			s=s+(L-P[i])/v[i]+2;
		}
	}
	for (i=1; ((i<=N)&&(s<=K)); i++){
		if (v[i]!=0){
		s=s-(L-P[i])/v[i];}
		v[i]=v[i]-1;
		if (v[i]!=0){
			s=s+(L-P[i])/v[i];
		}
		if (i==N){
			i=0;
		}
	}
	for (i=1; i<=N; i++){
		printf ("%d\n", v[i], " ");
	}
}