Герой может за один ход сдвинуться в клетку, соседнюю с данной по стороне или углу (если клетка проходима). За границы карты герой выйти не может. Теперь Вася хочет положить несколько слитков золота (в одной клетке — один слиток) так, чтобы кратчайшее расстояние до них от стартовой клетки было максимальным. Сколько клеток с золотом будет на этой карте? В качестве ответа укажите одно натуральное число, например, 4.
<span>КОМЕНТАРИЙ -Для карты, изображенной на рисунке ниже ответ 7 – есть 7 клеток (правый столбец и нижняя строка карты), кратчайший путь до которых требует 2 хода. До всех остальных клеток можно дойти за 1 ход.</span>
//Pascal ABC.NET v3.0 сборка 1111
var
ar:array of integer;
n:integer;
begin
n:=0;
setlength(ar,n+1);
readln(ar[n]);
while ar[n]<>0 do
begin
inc(n);
setlength(ar,n+1);
readln(ar[n]);
end;
sort(ar);
ar.Print(' ');
<span>end.</span>
Cls
input x
if x<0 then
z=log(-x)
end if
if x>=0 then
z=sqr(x+1)
end if
print z
1)
program gt;
var s,n,a,i:integer;
begin
read(n)
s:=0;
randomize;
for i:=1 to n do
begin
a:=random(100);
s:=s+a;
end;
writeln(s);
end.
2)
можно сделать с файлом
assign...
reset...
rewrite...
while not eof(..) do
begin
read(..,a);
s:=s+a;
end;
writeln(...,s);
close(..)
close(..);
end.
#include <iostream>
using namespace std;
int main() {
int a;
int max = -1000;
cout << "a = ", cin >> a;
while (a != 1000) {
if (a%10 == 0 && a>max) max = a;
cout << "a = ", cin >> a;
}
cout << "max = " << max << endl;
}
Пример:
<span>a = 138
a = 450
a = 981
a = 190
a = 409
a = 1000
max = 450</span>