View Code of Problem 32

#include <stdio.h>
#include <stdlib.h>
#include<ctype.h>
#include<string.h>
#include<math.h>
int main()
{
	int n = 0;
	int i, j;
	int  a, b, l, x[5], y[5], h[5];
	float r, s[5];
	while (scanf("%d%d", &a, &b) != EOF)
	{
		n = 0;
		for (i = 0; i < 5; i++)
		{
			scanf("%d%d%d", &x[i], &y[i], &h[i]);
			s[i] = sqrt(pow(x[i] - a, 2) + pow(y[i] - b, 2));
		}
		scanf("%d%f", &l, &r);
		
		for (i = 0; i < 5; i++)
		{

			if (s[i] <= l && h[i] < r * s[i])
			{
				for (j = 0; j < 5; j++)
				{
					if (i != j && ((y[i] - b)*(x[j] - a) == (y[j] - b)*(x[i] - a))
						&& s[j] < s[i] && s[j] * r < h[j])
						n = 0;
					else n = 1;
				}

			}
			if (n == 1)
				break;
		}

		if (n == 1)
			printf("Yes\n");
		else printf("No\n");
	}
	return 0;
}

Double click to view unformatted code.


Back to problem 32