Var a:array of array of integer; c:array of array of integer; ma:array of array of integer; i,j,n:integer; begin; randomize; readln(n); setlength(a,n+1); //задаём размерность динамических массивов setlength(c,n+1); setlength(ma,n+1); for i:=1 to n do begin; setlength(a[i],n+1); setlength(c[i],n+1); setlength(ma[i],n+1); end;
writeln('Matrix A:'); //генерируем массив псеводслучайных чисел for i:=1 to n do begin; writeln; for j:=1 to n do begin; a[i,j]:=random(10); write(a[i,j]:4); end; end; writeln;
writeln('Matrix C:'); //аналогично for i:=1 to n do begin; writeln; for j:=1 to n do begin; c[i,j]:=random(10); write(c[i,j]:4); end; end;
for i:=1 to n do //сохраняем матрицу C для транспонации for j:=1 to n do ma[i,j]:=c[i,j]; writeln;
writeln('Transpose matrix C:'); //транспонируем C for i:=1 to n do begin; writeln; for j:=1 to n do begin; c[i,j]:=ma[j,i]; write(c[i,j]:4); end; end;
writeln; writeln('Final matrix:'); // получаем финальную матрицу for i:=1 to n do begin; writeln; for j:=1 to n do begin; ma[i,j]:=2*c[i,j]*a[i,j]; {по свойству дистрибутивности матриц С(A+A)=C*A+C*A=2*C*A} write(ma[i,j]:4); end; end; end.
1) Допустим, бумагу мы сложим в бак 3. Это будет 83 + 58 = 141. Тогда в бак 2 надо сложить стекло или жесть.
1) а) Допустим, мы в бак 2 сложили стекло. Это будет 52 + 85 = 137. Тогда в бак 1 кладем жесть. Это будет 95 + 75 = 170. Всего 141 + 137 + 170 = 448 перемещений.
1) б) Допустим, мы в бак 2 сложили жесть. Это будет 64 + 75 = 139. Тогда в бак 1 кладем стекло. Это будет 98 + 85 = 183. Всего 141 + 139 + 183 = 463 > 448.
2) Допустим, бумагу мы сложили в бак 2. Это опять 83 + 58 = 141. 2) а) Кладем в бак 3 стекло. Это будет 98 + 52 = 150. Тогда в бак 1 кладем жесть. Это будет 95 + 75 = 170. Всего 141 + 150 + 170 = 461 > 448.
2) б) Кладем стекло в бак 1. Это будет 98 + 85 = 183. Тогда в бак 3 кладем жесть. 64 + 95 = 159 Всего 141 + 183 + 159 = 483 > 448.
3) Положим бумагу в бак 1. Это будет 83 + 83 = 166. 3) а) Положим стекло в бак 2. Это будет 52 + 85 = 137. Тогда жесть пойдет в бак 3. 64 + 95 = 159. Всего 166 + 137 + 159 = 465 > 448.
3) б) Положим стекло в бак 3. Это будет 52 + 98 = 150. Тогда жесть пойдет в бак 2. Это будет 64 + 75 = 139. Всего 166 + 150 + 139 = 455 > 448.
Я рассмотрел все 6 вариантов разложить 3 мусора по 3 бакам. ответ: минимальное количество перемещений равно 448.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку