kimyan123makc
27.01.2023 18:07

Прорешать информатику.
ava/\a/\b)=

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
milana20123
12.02.2022 04:12

Чтобы решить эту задачу, воспользуемся методом программирования:

1) напишем функцию, которая получает число в качестве аргумента и моделируя процесс преобразивания из условия возвращает результат:

int f(int n){

   int d[4];

   for(int i = 0; i < 4; i++){

       d[3 - i] = n % 10;

       n /= 10;

   }

   int u = d[0] + d[3], v = d[1] + d[2];

   string res;

   u < v ? res += to_string(u) + to_string(v) : res += to_string(v) + to_string(u);

   return stoi(res);

}

2) так как нам нужно найти наибольшее четырехзначаное число, дающее результат 815, то запускаем цикл, идущий от самого большого четырехзначного числа(9999) до самого маленького(1000), и как только нам встретится число, дающее в результате нужное число(815), выведем его в консоль, и закончим работу программы, то, что выведет программа и будет ответом:

полный код(результат работы на фото) :

#include <iostream>

using namespace std;

int f(int n){

   int d[4];

   for(int i = 0; i < 4; i++){

       d[3 - i] = n % 10;

       n /= 10;

   }

   int u = d[0] + d[3], v = d[1] + d[2];

   string res;

   u < v ? res += to_string(u) + to_string(v) : res += to_string(v) + to_string(u);

   return stoi(res);

}

int main(){

   for(int i = 9999; i >= 1000; i--){

       if(f(i) == 815){

           cout << i;

           return 0;

       }

   }

}

ответ: 9806


Автомат получает на вход четырёхзначное число. По этому числу строится новое число по следующим прав
0,0(0 оценок)
Ответ:
Леля24579
20.07.2022 08:13

Очевидно, решения нет, если нужно выпустить ровно K = NM - 1 человека: он должен перейти в какую-то комнату, но из всех комнат, кроме его, есть путь наружу.

При всех остальных K можно, например, поступить так:

- отсчитать сверху и слева направо K комнат, в них открыть дверь вверх

- в оставшихся комнатах, не находящихся в нижнем ряду, открыть путь вниз

- в оставшихся комнатах нижнего ряда, кроме правого нижнего угла, открыть дверь вправо

- в правом нижнем углу, если там ещё не открыта дверь, открыть дверь влево

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

Код (python 3):

N, M, K = map(int, input().split())

if K == N * M - 1:

   print("IMPOSSIBLE")

elif K == N * M:

   for _ in range(N):

       print("U" * M)

else:

   for _ in range(K // M):

       print("U" * M)

   if K // M < N - 1:

       print("U" * (K % M) + "D" * (M - K % M))

       for __ in range(N - 1 - K // M):

           print("D" * M)

       print("R" * (M - 1) + "L")

   else:

       print("U" * (K % M) + "R" * (M - K % M - 1) + "L")

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