Источники света
Задачу добавил: alef
Успешно сдано решений: 8
Вместо предисловия…
Если Вы помните, в квартире Маши Петровой шел ремонт. После окончания ремонта дел хватает. Да и отдохнуть тоже хочется… Тем более, что – Масленица.
Задача А: Источники света
Все, что осталось – позаботиться об освещении квартиры.
Сейчас довольно часто в одной комнате размещают несколько точечных источников света – получаются очень интересные эффекты. Однако эффекты – это, конечно, красиво. Но нужно, чтобы комната была еще и освещена в достаточной степени. Будем считать, что освещенность в любой точке комнаты может быть вычислена по формуле:
L(x,y,z) = K1/R1^2 + K2/R2^2 +… +KN/RN^2,
где N – количество точечных источников, K1, K2, …, KN – сила света каждого из этих источников, а R1, R2, …, RN – расстояние от этих источников до точки, в которой вычисляется освещенность.
Необходимо по заданному расположению источников света определить, достаточно ли освещена комната. Ваша задача – написать соответствующую программу.
Формат входного файла input.txt
Первая строка – целое число M и вещественное число L, записанные через пробел.
M – количество комнат (1<=M<=5), для которых необходимо выяснить, достаточно ли они освещены
L – минимально допустимое значение освещенности в каждой точке (одинаковое для всех комнат) (0.001<=L<=100)
Далее следуют описания M комнат.
Каждое из описаний комнаты имеет следующую структуру:
Первая строка описания – три целых числа W, V, H через пробел – линейные размеры комнаты (в сантиметрах, 100 <= W, V, H <= 1000)
Вторая строка описания – целое число Np – количество источников света (1<=p<=M; 1<=Np<=10)
Каждая из следующих Np строк описания содержит характеристики очередного источника света – четыре вещественных числа Kj, Xj, Yj, Zj (1<=j<=Np)
Kj – сила света (1<=Kj<=100000)
Xj, Yj, Zj – координаты центра источника света № j в комнате (в сантиметрах) (0<=Xj, Yj, Zj <=1000)
Примечание. Сила света и освещенность измеряются в условных (и согласованных между собой, разумеется) единицах
Пояснение. При расчетах по формуле точки, в которых собственно находятся источники света, придется из рассмотрения исключать (чтобы избежать деления на ноль). При расчете освещенности можно считать неразличимыми точки, отстоящие друг от друга на расстояние, не превышающее 0.01*<минимальный из линейных размеров комнаты W, V, Н>
Формат выходного файла
Выходной файл содержит M строк.
В каждой строке записано слово YES или NO: слово YES – если во всех точках соответствующей комнаты освещенность достаточная и слово NO, если хотя бы в одной точке комнаты освещенность недостаточна.
Через пробел после слова YES или NO указывается минимальная освещенность в комнате – вещественное число с точностью до 2 знаков после запятой – освещенность комнаты в самой плохо освещенной точке.
Пример входного файла
1 0.1
100 100 100
1
1000 50 50 50
Пример выходного файла
YES 0.13