AnastasiaStoyn
11.10.2021 16:55

Задача 2: Танец Для школьного праздника группа учащихся решила поставить танец, в котором иллюстрировалась бы работа алгоритма сортировки пузырьком. В этом танце учащиеся становятся в одну линию, после этого некоторые стоящие рядом танцоры могут меняться местами. Одновременные обмены запрещены, то есть пока одна пара танцоров меняется местами, другие остаются на своих местах.

В конце танца все девочки должны стоять в ряду слева, а все мальчики — справа. По данному первоначальному расположению мальчиков и девочек в ряду определите, какое минимальное число обменов им необходимо совершить, чтобы встать нужным образом.

Например, пусть первоначальная расстановка танцоров такая (буква «Д» обозначает девочку, буква «М» обозначает мальчика):

МДДМД
Тогда им необходимо выполнить 4 обмена. Запишем расстановку после каждого обмена, выделив жирным шрифтом пару, которая поменялась местами.

ДМДМД
ДМДДМ
ДДМДМ
ДДДММ
В этой задаче вам необходимо определить минимальное число обменов для следующих пяти первоначальных расстановок:

МДММДМД




Во второй расстановке сначала стоит 7 мальчиков, потом 8 девочек.

В третьей расстановке стоит 10 мальчиков, 10 девочек, 10 мальчиков, 10 девочек, 10 мальчиков, 10 девочек. Всего 60 танцоров.

В четвёртой расстановке 1 мальчик, 1 девочка, 2 мальчика, 2 девочки, 3 мальчика, 3 девочки, 4 мальчика, 4 девочки, 5 мальчиков, 5 девочек, 6 мальчиков, 6 девочек. Всего 42 танцора.

В пятой расстановке мальчики и девочки чередуются, всего 80 танцоров.

ответом на эту задачу является пять целых чисел, записанных в пяти отдельных строках, по одному числу в строке. ответы на расстановки должны быть записаны в том же порядке, в котором они приведены в условии. Если вы не можете найти ответ для какой-то расстановки, напишите в качестве ответа любое число.

Для выполнения вычислений вы можете пользоваться компьютером (калькулятором, электронной таблицей, средой программирования).

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Lukasheva1928
02.02.2020 22:47

#include <iostream>

using namespace std;

bool srav(int a, int b)

{

if (a > b)

 return 1;

else

 return 0;

}

int main()

{

int number = 0;

int AB = 1, CD = 1;

cout << "Input A , B\n";

//Произведение A на B

for (int i = 0; i <= 1; i++)

{

 cin >> number;

 AB *= number;

}

cout << "A*B = " << AB << endl;

for (int i = 0; i <= 1; i++)

{

 cin >> number;

 CD *= number;

}

cout << "C*D = " << CD << endl;

if(srav(AB,CD))

 cout<<"A*B > C*D";

else

 cout << "C*D > A*B";

return 0;

}

Объяснение:

0,0(0 оценок)
Ответ:
bessmertny69
02.02.2020 22:47

***

Объяснение:

f(11) 11>0 поэтому вызываем g(10)

g(10) 10>1 поэтому вызываем f(7)

f(7) 7>0 поэтому вызываем g(6)

g(6) 6>1 поэтому вызываем f(3)

f(3) 3>0 поэтому вызываем g(2)

g(2) 2>1 поэтому вызываем f(-1)

f(-1) -1 < 0 поэтому выходим из функции

Далее последовательный выход из вех всех функций.

При каждом вызове функции g() на экран печатается звездочка. Было 3 вызова g(10) g(6) g(2), поэтому на кране будет  три звездочки подряд (***).

 

Не забывайте нажать " ", поставить оценку и, если ответ удовлетворил, то выберите его как "Лучший"  

Бодрого настроения и добра!  

Успехов в учебе!

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