Из рисунка следует, что для N-1 пары отверстий, считая сверху, потребуется пройти двойное количество расстояний a и b, т.е. 2(N-1)(a+b). Еще одно расстояние a надо пройти между нижней парой отверстий и еще с каждой стороны остается свободный конец длины l. Тогда общая длина шнурка составит 2(N-1)(a+b)+a+2l
<em><u>Ниже приведена программа на языке Паскаль (версия TP 7.01).</u></em>
uses Crt;
var
a,b,l,N:integer;
begin
ClrScr;
Write('Vvedite a,b,l,N: ');
Read(a,b,l,N);
Writeln('Dlina=',2*(N-1)*(a+b)+a+2*l);
ReadKey
end.
<em><u>Тестовое решение:</u></em>
Vvedite a,b,l,N: 40 20 120 6
Dlina=880
142(5) = 1*5^2+4*5+2 = 25+20+2 = 47(10)
22(5) = 2*5+2 = 10+2 = 12(10)
21(3) = 2*3+1 = 6+1 = 7(10)
47-12+7 = 42(10)
164•8•128•32•64/8•1024•1024=
164•2^7•2^5•2^6/2^10=
164•2^18/2^10=
164•2^8=
164•2^8/2^10=164/4
41Кбайт
Код
var
x, a, b,i: integer;
begin
for i := 8 * 8 + 1 to 8 * 8 * 8 do
begin
x:=i;
a := 0;
b := 1;
while x > 0 do
begin
a := a + 1;
b := b * (x mod 8);
x := x div 8;
end;
if (a = 3) and (b = 10) then
writeln(i);
end;
end.
вывод
85
106
141
169
330
337
что делает <span>алгоритм</span>? Считает в восьмиричном числе кол-во знаков (а) и произведение чисел (b)