Страница: << 1 2 Отображать по:
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

На плоскости расположено N хулиганов, в точках (x1, y1), (x2, y2), … (xN, yN). Каждый хулиган характеризуется своей грозностью Ti и силой Si.

Маленький мальчик Петя изначально находится в точке (x, y). Если в начальный момент Петя находится на расстоянии меньшем либо равном Si от i-го хулигана, то тот бросает в него снежком. Испугавшись, Петя бежит в направлении от хулигана (по прямой, соединяющей Петю и хулигана) со скоростью V м/с в течении Ti секунд, после чего останавливается. Если в этот момент он снова находится близко к хулигану, в него снова бросают снежком, и т. д.

Если в Петю одновременно бросают несколько снежков, то Петя так сильно пугается, что не оглядываясь бежит домой. Если Петя оказывается вне достигаемости хулиганов, он очень радуется. Но если Пете приходится бегать в течении более чем T секунд, он устает и, остановившись в очередной раз, начинает плакать.

Гарантируется, что Петя никогда не остановится в точке, где находится хулиган.

Определите конечное состояние Пети, одно из:

убежал домой из точки (x, y) через t секунд.

плачет в точке (x, y)

радуется в точке (x, y), начиная с t секунды

Входные данные

На первой строке входного файла находится 5 чисел: целое N - количество хулиганов (0 N 100), вещественные V, x, y, – скорость и начальные координаты Пети и целое число T (1 T 10000). Следующие N строк содержат описания хулиганов в следующем формате: xi, yi, Ti, Si (xi, yi, Si – вещественные, Ti   целое, 1  Si  1000.0, |xi|, |yi| 1000.0, 1 Ti  1000) . Все числа разделяются одним или несколькими пробелами.

Выходные данные

Выведите в выходной файл одно из трех указанных предложений, подставив вместо x, y и t истинное положение Пети и соответствующий момент. Координаты следует выводить ровно с 2 знаками после запятой, время – целое число.

Примеры

Входные данные

Выходные данные

0 1.0 1.5 3.14 7

радуется в точке (1.50, 3.14), начиная с 1 секунды

1 1.0 1.0 0.0 4

0.0 0.0 4 3.0

радуется в точке (5.00, 0.00), начиная с 5 секунды

1 1.2 1.0 0.0 4

0.0 0.0 10 3.0

плачет в точке (13.00, 0.00)

2 1.0 1.0 0.0 5

0.0 0.0 2 1.2

4.0 0.0 2 1.2

плачет в точке (3.00, 0.00)

2 1.0 1.0 0.0 4

0.0 0.0 2 2.0

2.0 0.0 2 2.0

убежал домой из точки (1.00, 0.00) через 0 секунд

3 1.0 1.0 0.0 4

0.0 0.0 1 1.0

2.0 1.0 2 1.0

2.0 -1.0 2 1.0

убежал домой из точки (2.00, 0.00) через 1 секунд

2 1.0 1.0 0.0 1

0.0 0.0 1 10.0

4.0 0.0 1 1.0

плачет в точке (3.00, 0.00)

ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Фирма Macrohard разработала новый язык программирования: P--. В этом языке имеется K типов целых чисел – int, longint, longlongint, …, longlonglongint (K-1 раз long). Числа этих типов могут принимать значения в диапазонах 0..M0, 0..M1, …, 0..MK-1 соответственно.

Также, в этом языке имеется процедура вывода writef, которая имеет неограниченное количество параметров. В качестве первого параметра она получает строку, а в качестве второго и последующих может получать числа любого из поддерживаемых типов. При этом вывод осуществляется следующим способом: выводится строка, переданная первым параметром, в которой произведена подстановка параметров, а именно, вместо %i подставляется число типа int, вместо %li – число типа longint, вместо %llli (букв l) – число типа longlonglongint (j раз long). Вывод числа осуществляется в системе счисления с основанием B (2 B 36).

Цифрами в системе счисления с основанием B являются обычные десятичные цифры и, если их недостаточно, заглавные буквы латинского алфавита в алфавитном порядке. Например, 10010=4С22, 126010=Z036.

При этом тип передаваемых параметров должен совпадать с соответствующими шаблонами. Например, если M0=300, M1=3000, M2=1000000, B=10, то writef(“hello %i%li”, 300, 500) выведет “hello 300500”.

Дана строка, которую вывела некоторая процедура writef. Выясните, какая самая короткая строка могла быть передана передана этой процедуре в качестве первого параметра. Например, для приведенного выше примера, это могла быть строка “hello %lli”.

Входные данные

На первой строке входного файла находятся числа K и B (1 K 50, 2 B 36). Следующая строка содержит числа M0, M1, …, MK-1 (0 M0 M1 MK-1 109, числа заданы в десятичной системе счисления). На следующей строке находится текст, выведенный некоторой процедурой writef. Длина текста не превышает 200 символов. Текст не содерждит символов "%".

Выходные данные

Выведите в выходной файл самую короткую строку, которая могла быть передана процедуре writef в качестве первого параметра. На второй строке перечислите все остальные параметры, которые были ей переданы, числа выводите в десятичной системе счисления и разделяйте ровно одним пробелом.

Если решений несколько, достаточно выдать любое.

Примеры
Входные данные
3 10
300 3000 1000000
hello 300500
Выходные данные
hello %lli
300500 
Входные данные
1 4
1
hello 111
Выходные данные
hello 111

Входные данные
1 2
10
hello 111
Выходные данные
hello %i
7 
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Город, в котором живет Петя имеет вид прямоугольника, улицы в нем образуют сетку MxN. Перед каждым перекрестком на подъезде к нему может стоять дорожный знак. Также знак может стоять после перекрестка у въезда на улицу.

 В городе встречаются следующие виды дорожных знаков: знаки, установленные перед перекрестком – поворот только направо (R), поворот только налево (L), только проезд прямо (F), поворот налево запрещен (NL), поворот направо запрещен (NR), проезд прямо запрещен (NF); знаки, установленные после перекрестка – проезд запрещен (S), максимальная скорость до ближайшего перекрестка – X км/ч. (!X). В отсутствие ограничивающего знака максимальная скорость равна Y км/ч. Длина всех улиц одинакова и равна L метров. Разворачиваться на перекрестке и ехать в строго противоположном направлении не разрешается.

Петя живет в доме около перекрестка, где пересекаются xs-я вертикальная и ys-я горизонтальная улицы (улицы нумеруются, начиная с 1). Петин папа работает на заводе около перекрестка, где пересекаются xd-я вертикальная и yd-я горизонтальная улицы. Помогите Пете выяснить, какое минимальное время требуется папе, чтобы доехать на работу, если Петин папа – законопослушный водитель и соблюдает все правила дорожного движения.

Входные данные

Первая строка входного файла содержит целые числа M, N (1 M, N 20), Y (1 Y 80), (1  L  10000), xs, ys, xd и yd (1 xs, xd N, 1 ys, yd M, (xs, ys) (xd, yd)).

Следующие MN строк содержат информацию о знаках, расположенных на соответствующих перекрестках (порядок перечисления перекрестков следующий: сначала идут перекрестки, расположенные на 1-й горизонтальной улице, в возрастающем порядке номеров вертикальных улиц, затем перекрестки, расположенные на 2-й горизонтальной улице, и т.д.)

Формат информации о знаках следующий: описания знаков разделяются запятыми, сначала идет буква латинского алфавита, означающая направление, в котором уходит с перекрестка улица, на которой стоит знак, затем после двоеточия идет обозначение знака (направления обозначаются буквами N, S, E и W – см. рисунок). После последнего знака идет точка. По типу знака понятно, находится он до или после перекрестка. Ограничение скорости – целое число, 1 X 80.

Выходные данные

Выведите в выходной файл единственное число – округленное до ближайшего целого минимальное количество секунд, необходимое Петиному папе, чтобы добраться до работы (допускается ошибка в 1 секунду).

Примеры
Входные данные
3 4 60 5000 2 2 4 3
.
.
S:NL.
.
E:L.
N:S,E:S,S:S,W:!25.
S:NR.
.
.
E:!72,N:!80,W:!15.
E:!10.
.
Выходные данные
3070

Страница: << 1 2 Отображать по:
Выбрано
:
Отменить
|
Добавить в контест