elenalm
17.01.2022 10:11

Через питон Задача 6: Лазерная пушка
У игрока в космической стрелялке есть очень мощная лазерная пушка. Но она неподвижна и может стрелять только в одном направлении. Игрок может расставить на игровом поле двусторонние зеркала, меняющие ход луча, чтобы поражать врагов.

Введём декартову систему координат с центром, где расположена пушка, то есть пушка имеет координаты (0; 0). Пушка стреляет в направлении точки (1; 1). Игрок может поставить зеркала в точках с целочисленными координатами. Зеркала могут быть горизонтальными или вертикальными, попадание луча в зеркало меняет траекторию луча по законам отражения света. Некоторые возможные варианты отражения луча от зеркала изображены на рисунке.

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

Входные данные
Программа получает на вход два целых числа X и Y, не превосходящих по модулю 10000, записанные в разных строках — координаты цели. Точка (X; Y) не совпадает с началом координат.

Выходные данные
Программа должна вывести в первой строке число N — необходимое количество зеркал.

Следующие N строк должны содержать информацию о каждом зеркале. В i-й строке должны быть записаны через пробелы два целых числа xi и yi и один символ ti, обозначающие координаты (xi; yi) точки, в которых установлено i-е зеркало, и тип этого зеркала ti. Если ti является символом «V», то i-е зеркало размещено вертикально, если же ti является символом «H», то зеркало размещено горизонтально. Например, строка «-2 5 H» обозначает горизонтальное зеркало в точке (-2; 5). Зеркала можно выводить в любом порядке. Зеркало нельзя размещать в точке (0; 0), также нельзя размещать два зеркала в одной точке. Значения xi и уi не должны по модулю превосходить 100000. Также, разумеется, нельзя допустить, чтобы отражённый луч попал в пушку.

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

Если поразить цель в соответствии с условиями задачи невозможно, программа должна вывести одно число «-1».

Если для поражения цели зеркала не нужны, программа должна вывести одно число «0».

Система оценивания
Решения, правильно работающие только для X ≥ 0 и Y ≥ 0, будут оцениваться в

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
паулодибала
02.02.2020 01:09
И лишь пару лет тому назад интернет не был так значим людьми, как в наши дни. Дети не ходят гулять, а сидят в интернете, играя в различные игры или общаясь с людьми в соц сетях. Живое общение заменяет "смс". Не понимаешь чего-либо в уроке или жизни - загулил, хотя можно подойти к учительнице, попросить и она попытается понятно донести ту или иную информацию; или же подойти к родителям и попросить совета. Сейчас интернет имеет большую роль в нашем образе жизни, в жизни молодежи, но это не значит, что стоит забывать о реальном мире. 
Блин, как-то так 
0,0(0 оценок)
Ответ:
lizayka2001
10.08.2022 11:47
ответ: 1111011111001011
Переводим в десятичную: 
F7CB16 = 15∙163+7∙162+12∙161+11∙160 = 61440+1792+192+11 = 6343510 
Потом это число переводим в двоичную:
63435/2=31717 (остаток 1)
31717/2=15858 (остаток 1)
15858/2=7929 (остаток 0)
7929/2=3964 (остаток 1)
3964/2=1982 (остаток 0 )
1982/2=991 (остаток 0)
991/2=495 (остаток 1)
495/2=247 (остаток 1)
247/2=123 (остаток 1)
123/2=61 (остаток 1)
61/2=30 (остаток 1)
30/2=15 (остаток 0)
15/2=7 (остаток 1)
7/2=3 (остаток 1)
3/2=1 (остаток 1)
Последний ответ 3/2=1 - эту единицу берём и наоборот собираем остатки.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота