Наблюдения станции в заданном радиусе

тема: Расстояния и kNN · уровень: базовый

Условие

Метеостанция хранит наблюдения температуры воздуха и относительной влажности. Часть наблюдений может быть неполной: вместо отсутствующего значения записано NA.

Каждое полное наблюдение рассматривается как точка с координатами (t, h), где t — температура, а h — влажность. Для заданной точки запроса (t₀, h₀) требуется определить, сколько наблюдений находится от неё на расстоянии не больше радиуса r.

Используется евклидово расстояние: d = √((t − t₀)² + (h − h₀)²). Наблюдение с NA хотя бы в одной из двух координат не учитывается. Если расстояние равно радиусу, наблюдение включается в ответ.

Округление не выполняется, требуется вывести целое число. Если полных наблюдений нет, ответ равен 0.

Формат ввода

В первой строке дано целое число n — количество наблюдений.

В следующих n строках даны температура и влажность одного наблюдения через пробел. Каждое значение является целым числом или строкой NA.

В последней строке даны три целых числа t₀, h₀ и r через пробел: температура точки запроса, её влажность и радиус.

Формат вывода

Выведите одно целое число — количество полных наблюдений, расстояние от которых до точки запроса не превышает r.

Ограничения

1 ≤ n ≤ 1000.

Температура в полном наблюдении и t₀: от −60 до 60.

Влажность в полном наблюдении и h₀: от 0 до 100.

0 ≤ r ≤ 200.

Каждое поле наблюдения имеет длину от 1 до 3 символов и содержит либо допустимое целое число, либо NA.

Решить задачу с автопроверкой на Python →

Куда дальше