Внимание!
Слова Ввод>
и Вывод< не вводятся и не
выводятся, мы их используем для пояснения
структуры примера!
Задача TRAVEL
Задан полигон в виде
прямоугольного клеточного поля размером MxN
клеток (M и N, определяют размеры
полигона вдоль осей OX и ОY соответственно). В
углах полигона и, возможно, на сторонах
размещены выходы, каждый размером в одну
клетку. Левый нижний выход имеет координаты
(1,1). Граничные клетки полигона, не
являющиеся выходами, образуют упругие
стенки. Робот начинает движение с клетки с
координатами K, L в одном из восьми
направлений (вертикально, горизонтально и
по двум диагоналям в обоих направлениях).
Робот двигается только по целым клеткам и,
натолкнувшись на стенку, продолжает
движение с той же скоростью по закону: угол
падения равен углу отражения. Необходимо
выяснить: останется ли робот на полигоне
или покинет его через один из выходов. В
последнем случае указать координаты выхода
и количество столкновений со стенками.
Направления движения Т нумеруються
числами от 1 до 8 по часовой стрелке.
Направление 1 - вдоль оси Y в направлении
увеличения координаты (вверх).
Ввод-вывод
Вы вводите с клавиатуры два натуральных
числа M и N (3 <= M <= 1001), (3 <= N <= 1001).
Вы вводите с клавиатуры количество
неугловых выходов V (0 <= V <= 255), а затем
- V пар натуральных чисел - X и Y
координаты неуголвых выходов. Далее
вводите начальные координаты робота K, L и
направление T. Все величины вводятся через
пробел.
Вы выводите на экран 0, если робот не может
найти выход, а если нашел - три числа через
пробел - координаты выхода и количество
столкновений.
Примеры
1. Ввод> 14 6 1 10 1 13 5 8
Вывод< 14 6 13
2. Ввод> 11 6 0 4 3 3
Вывод<0 |