Const N = 5; Var m:array [1..N, 1..N] of integer; j,S,i:integer; Begin S:=0; for i:=1 to N do for j:=1 to N do begin readln(m[i,j]); S:=S+m[i,j]; end; writeln(S); readln; end.
Давай попробуем рассуждать логически. Если бы сад состоял из двух деревьев, то было бы два варианта садов: 100+99 и 100+101. Если бы досадили третье дерево, то каждый из предыдущих садов удвоил бы число вариантов: первый 100+99+98 и 100+99+100, и так же второй 100+101+100 и 100+101+102. Подмечаем закономерность: каждое добавляемое дерево удваивает количество вариантов. А сад из одного дерева имеет лишь один вариант.
Var m:array [1..N, 1..N] of integer; j,S,i:integer;
Begin
S:=0;
for i:=1 to N do
for j:=1 to N do begin
readln(m[i,j]); S:=S+m[i,j]; end;
writeln(S);
readln;
end.