Friday, April 24, 2015

UVa 11909 - Soya Milk

#include <math.h>
#include <stdio.h>

int main() {
	int l, w, h, sigma_in_degrees;
	while (scanf("%d %d %d %d\n", &l, &w, &h, &sigma_in_degrees) != EOF) {
		double sigma = sigma_in_degrees * M_PI / 180;
		double diagonal = sqrt(l * l + h * h);
		double y = l / cos(sigma);
		double x = y * sin(sigma);

		double area;
		if (y <= diagonal) {
			area = l * h - x * l / 2;
		} else {
			double x1 = h / tan(sigma);
			area = x1 * h / 2;
		}
		double volume = area * w;
		printf("%.3f mL\n", volume);
	}
	return 0;
}

No comments:

Post a Comment