View Code of Problem 32

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include<math.h>
int main() {
	int x[5], y[5], hp[5], x0, y0,L;
	float R;
	while (scanf("%d%d", &x0, &y0) != EOF) {
		int flag1 = 1;
		int flag2 = 1;
		for (int i = 0; i < 5; i++) {
			scanf("%d%d%d", &x[i], &y[i], &hp[i]);
		}
		scanf("%d%f",&L,&R);
		for (int i = 0; i < 5; i++) {
			int a = abs(x[i] - x0);
			int b = abs(y[i] - y0);
			int c = pow(a, 2) + pow(b, 2);
			float d = sqrt(c);
			if (L < d) {
				flag1 = 0;
			}
			else {
				flag1 = 1;
				float hp2 = R * d - hp[i];
				if (hp2 < 0) {
					flag2 = 0;
				}
				else {
					flag2 = 1;
					break;
				}
			}
		}
		if (flag1 == 0) {
			printf("NO\n");
		}
		else {
			if (flag2 == 1) {
				printf("YES\n");
			}
			else {
				printf("NO\n");
			}
		}
		
	}
}

Double click to view unformatted code.


Back to problem 32