Загрузка [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js
 

printЗанятие 10

printE. Круглая задача

Ограничения: время – 2s/4s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

После того как Робинзон Крузо построил свою лодку, он решил обследовать близлежащие острова архипелага из N островов. Целью своего путешествия он выбрал N-й остров, надеясь, что обнаружит на нем туземное поселение и британского консула. Опасаясь внезапных тропических штормов, он решил не отплывать далеко от берега и переплывать с одного острова на другой, только если расстояние между берегами этих островов (и, следовательно, плавание вдали от берега) не превышает D километров.
Для упрощения задачи все острова будем считать кругами с разным радиусом. Напишите программу, которая поможет Робинзону определить, сможет ли он добраться до N-го острова.
Во входном файле в первой строке содержатся два целых числа N (2 ) и D (5\ ≤\ D\ ≤\ 50), разделенных одним пробелом – число островов и максимальное расстояние, на которое отваживается совершить плавание Робинзон. В следующих N строках находится по три целых числа X_i, Y_i, R_i (0\ ≤\ X_i,\ Y_i\ ≤\ 1000, 1\ ≤\ R_i\ ≤\ 50, 1\ ≤\ i\ ≤\ N) через один пробел – координаты и радиус острова. Первый остров является стартовым, а N-й – целью путешествия.
В выходной файл вывести "YES", если Робинзон сумеет добраться до цели, или "NO", если цели невозможно достичь для заданного ограничения D.

Пример ввода

5 9
5 25 3
8 12 2
15 15 5
30 15 3
35 5 4

Вывод для примера

YES
loading