Cod sursa(job #116032)

Utilizator xtephanFodor Stefan xtephan Data 17 decembrie 2007 17:55:58
Problema Operatii Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<stdio.h>
int sol;

void rezolva();
void afiseaza();


int main(){


	freopen("operatii.in", "r", stdin);
	freopen("operatii.out", "w", stdout);

	rezolva();
	afiseaza();


return 0;
}



void rezolva() {

	int n, nr, min=32500, max=0, ante=0, x=0;
	int t=0;

	scanf("%d", &n);

	for (int i=1; i<=n; i++) {

		scanf("%d", &nr);

		if(nr!=0) {
			if(nr<min)  min=nr;
			if(nr>max)  { max=nr; x=0; }
			if(nr == max && nr!=ante) x++;

			ante=nr;
			t=1;

		}  else {
		     if(t) {
			sol+=min;
			sol+=(max-min)*x;

			x=0;   min=32500; max=0;
			ante=0;
		     }
		     t=0;

		}

	}

	if(t) {
		sol+=min;
		sol+=(max-min)*x;
	}

}


void afiseaza() {
	printf("%d", sol);
}