В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
galina1809
galina1809
24.05.2023 21:44 •  Информатика

Требуется определить, бьет ли КОНЬ, стоящий на клетке с указанными
координатами (номер строки и номер столбца), фигуру, стоящую на другой
указанной клетке.

Вводятся четыре числа: координаты КОНЯ (два числа) и координаты другой
фигуры (два числа). Координаты вводятся парами, каждая пара в отдельной
строке. Координаты - целые числа в интервале от 1 до 8.

Требуется вывести слово YES, если КОНЬ сможет побить фигуру за 1 ход
и NO - в противном случае.

Примеры:
1) входные данные
1 1
3 3
выходные данные
NO

2) входные данные
1 1
3 2
выходные данные
YES

3) входные данные
1 1
1 4
выходные данные
NO

Замечание 1: КОНЬ ходит русской буквой «Г» (или латинской «L»).
Замечание 2: как вводить 2 значения в одной строке через Пробел НА ПИТО

Показать ответ
Ответ:
Ilsinu
Ilsinu
16.04.2022 05:34

program HelloWorld;

var a: array of integer;

var N, min, max, i, variable:integer;

begin

   min := 32767;

   max := 0;

   readln(N);

   for i := 0 to N do begin  

       readln(variable);

       if (variable > 0) and (variable mod 2 = 0) and (variable > max) then

           max := variable;

       if (variable > 0) and (variable mod 2 = 0) and (variable < min) then

           min := variable;

   end;

   if (max <> 0) and (min <> 32767) then

       writeln(min, ' ', max)

   else  

       writeln(-1);

end.

0,0(0 оценок)
Ответ:
nyarokhno
nyarokhno
02.07.2020 21:47

Возьмём упрощённую версию строки, состоящую из 15 единиц.

Проделав со строкой все операции можно заметить, что после каждого выполнения программы в строке 9 единиц заменяется на одну, значит после каждого выполнения программы становится на 8 единиц меньше. Будем вычитать из 84 "8", пока не останется >5 единиц, чтобы программа смогла работать.

Получается 84-72=12

Напишем 12 единиц и пропустим их через программу, получится

222111 (сначала первые три единицы заменяются на два, потом ещё раз и ещё раз, т.к. в строке находится 11111. 222 заменится на 1 не может, т.к. в строке больше не найдено "11111".

ответ: 222111

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота