Contest.uni-smr.ac.ru :: соревнования по программированию
Русская версия || English version
Login:
Password:
Забыли пароль?
 пример поиска: Вася Пупкин
 

Источники света

Задачу добавил: 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

Сдать задачу

Задать вопрос жюри по этой задаче