kirushgold
18.10.2020 16:17

Две семьи (в каждой семье есть папа, мама и дочь) хотят переправиться через реку. У них есть лодка, в которой может переправиться два человека, причем грести могут только мужчины (то есть в лодке всегда должен плыть хотя бы один папа). Дочки могут плыть в лодке или оставаться на берегу только с кем-либо из своих родителей. Как им всем переправиться на другой берег? Составьте план перевозки, в котором должно быть указано, кто переправляется в лодке каждый раз.

ответ на эту задачу необходимо записать в виде нескольких строк, каждая строка соответствует одной переправе. Нечётные строки соответствуют переправам с первого берега (на котором первоначально находятся люди) на второй берег, чётные строки соответствуют переправе в обратном направлении. В каждой строке должны быть указаны один или два человека через запятую. Переправляющиеся люди обозначаются строками П1, М1, Д1, П2, М2, Д2, обозначающих папу, маму, дочку из первой семьи, папу, маму, дочку из второй семьи.

Например, следующая запись:

П1, М2
П1

обозначает, что папа из первой семьи и мама из второй семьи переправляются через реку, затем папа из первой семьи возвращается обратно.

Чем меньше переправ будет в вашем алгоритме, тем больше вы получите.

В этой задаче решение принимается на проверку во время олимпиады, если запись ответа удовлятворяет условию задачи, все переправы корректны и удовлетворяют условию задачи. При этом не проверяется то, что задание выполнено, то есть все люди переправились.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
nikaa10
22.04.2021 00:12
Начнем с формул.
Площадь треугольника: S = 1/2*a*b*sin C
Отсюда: sin C = 2*S/(a*b); cos C = sqrt(1 - sin^2 C)
tg C = sin C / cos C; C = atan(tg C)
Теорема косинусов: c = sqrt(a^2 + b^2 - 2*a*b*cos C)
Площадь: S = c*h/2; отсюда h = 2*S/c
Теорема синусов: a/sin A = b/sin B = c/sin C
Отсюда: sin A = a/c*sin C; sin B = b/c*sin C
cos A = sqrt(1 - sin^2 A); cos B = sqrt(1 - sin^2 B)
tg A = sin A/cos A; A = atan(tg A);
tg B = sin B/cos B; B = atan(tg B)
Периметр: P = a + b + c
Теперь записываем в Паскале
singam := 2*S/(a*b); cosgam = sqrt(1 - singam*singam);
tangam := singam/cosgam; Gamma := atan(tangam);
c := sqrt(a*a + b*b - 2*a*b*cosgam); h := 2*S/c;
P := a + b + c;
sinalp = a/c*singam; cosalp = sqrt(1 - sinalp*sinalp);
tanalp := sinalp/cosalp; Alpha := atan(tanalp);
sinbet = b/c*singam; cosbet = sqrt(1 - sinbet*sinbet);
tanbet := sinbet/cosbet; Beta := atan(tanbet);
0,0(0 оценок)
Ответ:
paraxatdin
06.02.2022 17:03
Домик
uses graphABC; beginsetwindowsize(800,600);setpencolor(clblue);setbrushcolor(clblue);rectangle(0,0,800,400);setpencolor(clgreen);setbrushcolor(clgreen);rectangle(0,400,800,600); setpencolor(clblack);setbrushcolor(clSilver);rectangle(50,300,250,500);rectangle(250,500,500,300);line(50,300,150,200);line(150,200,250,300);line(400,200,500,300);line(150,200,400,200);floodfill(150,250,clsilver);floodfill(300,250,clMaroon);setbrushcolor(claqua);rectangle(110,360,190,440);rectangle(280,360,360,440);setbrushcolor(clSilver);rectangle(280,180,320,230);setbrushcolor(clMaroon);rectangle(400,350,470,500);setbrushcolor(claqua);circle(150,270,20);setbrushcolor(clBrown);rectangle(650,400,670,500);setbrushcolor(clgreen);ellipse(570,150,750,420);end.

КРУГ

uses graphabc;
var a,b,c,i,count:integer;

begin
floodfill(1, 1, clblue); {çàêðàøèâàåì ïðÿìîóãîëüíèê}
setbrushstyle(bsClear); {ñîçäà¸ì êðóãè}
{êîðäèíàòû êðóãà}
a:=100;
b:=100;
c:=50;
count:=1;

for i:=1 to 15 do {}
begin
if(count <= 4) then
begin
circle(a,b,c);
floodfill(a, b, clwhite);
a:=a+90;
end;
if(count = 5) then
begin
circle(a,b,c);
floodfill(a, b, clwhite);
a:=100;
b:=b+90;
count:=0;
end;
count:=count+1;
end;
end.
вот еще одна прога
program grnebo;
uses graphABC,crt;
var
x,y:integer;
n,i,r,k:integer;
m:array [1..6] of integer;
begin
randomize;
m[1]:=clred;
m[2]:=clyellow;
m[3]:=clgreen;
m[4]:=clblue;
m[5]:=clolive;
m[6]:=clsilver;
for i:=1 to 50 do begin
x:=300 + random(510)-200;
y:=250 + random(400)-200;
r:=10;
delay(100);
k:= random(6)+1;
SetBrushColor(m[k]);
circle(x,y,r);
end;
end.

ЛИЦО
uses crt,graphABC; var x,y,ul,gr,nt,w,r,h:integer;     c:char;     label 1; procedure uslov; begin   if w=0 then DrawPicture(nt,x,y,r,h);   if w=1 then DrawPicture(ul,x,y,r,h);   if w=2 then DrawPicture(gr,x,y,r,h); end; begin r:=650; h:=400; w:=1; HideCursor; 1: circle(300,200,100);    arc(300,350,100,60,120);    circle(340,170,20);    circle(340,180,10);    circle(260,170,20);    circle(260,180,10);    RoundRect (290,180,310,230,10,10);    line(300,100,300,140);    line(260,110,250,140);    line(340,110,350,140);    SaveWindow('d:\g');    ClrScr;    circle(300,200,100);    line (250,250,350,250);    circle (340,170,20) ;    circle (340,180,10);    circle (260,170,20);    circle (260,180,10);    RoundRect (290,180,310,230,10,10);    line (300,100,300,140);    line (260,110,250,140);    line (340,110,350,140);    SaveWindow('d:\n');    ClrScr;    circle(300,200,100);    arc(300,220,50,210,-30);    circle (340,170,20) ;    circle (340,180,10);    circle (260,170,20);    circle (260,180,10);    RoundRect (290,180,310,230,10,10);    line (300,100,300,140);    line (260,110,250,140);    line (340,110,350,140);    SaveWindow('d:\u');    ClrScr; gr:=LoadPicture('d:\g'); nt:=LoadPicture('d:\n'); ul:=LoadPicture('d:\u'); uslov; repeat if keypressed then  begin   c:=readkey;   case c of   #110:begin       ClrScr;       w:=0;       DrawPicture(nt,x,y,r,h);  //нейтраль       end;   #117:begin       ClrScr;       w:=1;       DrawPicture(ul,x,y,r,h); //улыбка       end;   #104:begin       ClrScr;       w:=2;       DrawPicture(gr,x,y,r,h);   //грусть       end;   #72:begin // клавиша вверх       ClrScr;       y:=y-5;       uslov;       end;   #75:begin //клавиша вправо       ClrScr;       x:=x+5;       uslov;       end;   #80:begin //клавиша вниз       ClrScr;       y:=y+5;       uslov;       end;   #77:begin //клавиша влево       ClrScr;       x:=x-5;       uslov;       end;   #44:begin //клавиша "<" меньше      ClrScr;      r:=r-7;      h:=h-5;      uslov;      end;   #46:begin //клавиша ">" больше       ClrScr;       r:=r+7;       h:=h+5;       uslov;       end;   #114:begin //клавиша "r" красный       ClrScr;       SetPenColor(clred);       goto 1       end;   #103:begin //клавиша "g" зеленый       ClrScr;       SetPenColor(clgreen);       goto 1       end;   #98:begin //клавиша "b" синий       ClrScr;       SetPenColor(clblue);       goto 1       end;   #121:begin //клавиша "y" желтый       ClrScr;       SetPenColor(clyellow);       goto 1       end;   #97:begin //клавиша "a" черный       ClrScr;       SetPenColor(clblack);       goto 1       end;   #113:begin //клавиша "q" увеличение контура втрое       ClrScr;       SetPenWidth(3);       goto 1       end;   #119:begin //клавиша "w" уменьшение контура Перемещение - стрелки лево, право, вверх, вниз');       writeln('  Увеличить рисунок - ">"');       writeln('  Уменьшить рисунок - "<"');       writeln('  Контур толще  - "q"');       writeln('  Контур тоньше - "w"');       writeln('  Улыбка  - "u"');       writeln('  Грусть  - "h"');       writeln('  Нейтрал.- "n"');       writeln('  Красный - "r"');       writeln('  Зеленый - "g"');       writeln('  Синий   - "b"');       writeln('  Желтый  - "y"');       writeln('  Черный  - "a" "F1"');       writeln;       writeln;       writeln('       Выход из окна любое действие над картинкой');       end;   end;  end; until c=#27; end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота