Files
Polsl-Notes/PI/Ćwiczenia/20221121122351.md

416 B

# l, p - leftmost rightmist
void minmax3(double a[], int l, int p, int &min, int &max){
	if (l==p){
		## tablica jednoelementowa
		min=max=l;
	} else if (l+1==p) {
	if (a[l]>a[p]){max=l;min=p;}else{min=l;max=p;}
	max = l;
	} else {
		int m1,m2,M1,M2;
		minmax3(a,l,(l+p)/2,m1,M1);
		minmax3(a,l,(l+p)/2+1,m2,M2);
		if(a[m2]<a[m1])
			min=m2;
		else min=m1;
		if(a[M2]>a[m1])
			max=M2;
		else max=M1;
	}
}