Задача 3: Водолей У исполнителя Водолей есть два сосуда: сосуд A объемом 3 литра и сосуд B объемом 7 литров. Также исполнитель Водолей умеет выполнять команды:

наполнить сосуд A — сосуд наполняется водой до полного заполнения,
наполнить сосуд B — сосуд наполняется водой до полного заполнения,
опустошить сосуд A — вся вода из сосуда A выливается,
опустошить сосуд B — вся вода из сосуда B выливается,
перелить в B — вода из A переливается в B, пока не выльется полностью либо пока в B есть место; оставшаяся вода остается в сосуде A,
перелить в A — вода из B переливается в A, пока не выльется полностью либо пока в A есть место; оставшаяся вода остается в сосуде B.
У вас есть алгоритм для исполнителя Водолей из 10 команд, в которой не проставлены названия сосудов.

наполнить ...
перелить в ...
опустошить ...
наполнить ...
перелить в ...
опустошить ...
перелить в ...
опустошить ...
наполнить ...
перелить в ...
Вы не можете влиять на последовательность команд, но можете менять названия сосудов, задавая соответственно A — для первого сосуда и B — для второго.

Напишите последовательность названий сосудов, которые нужно подставить в указанный выше список команд, чтобы получить необходимое количество литров в каждом из представленных ниже случаев (в начальный момент выполнения алгоритма сосуды пусты):

A = 0, B = 6,
A = 3, B = 1,
A = 0, B = 4,
A = 3, B = 6,
A = 2, B = 7.
Для каждой пары значений вам необходимо в ответе записать одну строку, состоящую из латинских символов A и B, которые будут подставлены в приведенный выше алгоритм. В ответе должно быть ровно пять строк, состоящих из последовательностей символов A и B без разделителей. Длина корректной последовательности должна быть равна 10 символам. Если вы не смогли составить алгоритм для какого-то из случаев, то напечатайте в этой строке единственный символ A.

Катти16 Катти16    1   27.10.2021 15:06    41

Ответы
Urtaol20 Urtaol20  27.10.2021 15:10

то, короче, решение диофантова уравнения: Ax - By = N

1. наливаем в A, переливаем в B, пока B не наполнится

2. выливаем из B

3. переливаем остаток из A в B

повторяем пункты 1-3, пока уровень в A или B не станет равным N

если решений нет, то НОД (A, B) не делит N нацело, так что алгоритм зацикливается.

Объяснение:

хз

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика