Python 3.6
n = int(input())
a = [int(i) for i in input().split()]
up, now, max_, min_ = False, 0, 0, 0
if n == 1:
print('0 0')
else:
for i in range(1, n):
if a[i - 1] < a[i]:
if not up:
up = True
now = 0
now += a[i] - a[i-1]
if now > max_:
max_ = now
if a[i-1] > a[i]:
if up:
up = False
now = 0
now += a[i-1] - a[i]
if now > min_:
min_ = now
print(max_, min_)
PascalABC.NET 3.5.1
Program c_contest;
var Data: array of longword;
i, n, count, max, min, now: longword;
up: boolean;
F: textfile;
begin
Assign(F, 'input.txt');
Reset(F);
readln(F, n);
SetLength(Data, n);
for i := 0 to n-1 do
begin
read(F, Data[i]);
end;
Close(F);
if n = 1 then write('0 0')
else
begin
for i := 1 to n-1 do
begin
if Data[i-1] < Data[i] Then
begin
if not up Then
begin
up := True;
now := 0;
end;
now := now + (Data[i] - Data[i-1]);
if now > max Then max := now;
end;
if Data[i-1] > Data[i] Then
begin
if up Then
begin
up := False;
now := 0;
end;
now := now + (Data[i-1] - Data[i]);
if now > min Then min := now;
end;
end;
write(max, ' ',min);
end;
end.
Объяснение:
По коду видно
Поделитесь своими знаниями, ответьте на вопрос:
Дан рекурсивный алгоритм: def F(n): print('*') if n > 0: F(n-3) F(n-2) F(n // 2) F(n // 2) Сколько символов "звездочка" будет напечатано на экране при выполнении вызова F(6)? Только ответ
не так уж и трудно, если
program project2;
var
n,a,b,c,i,k,max,min: longint;
inp,outp: text;
begin
assign(inp,'input.txt');
reset(inp);
assign(outp,'output.txt');
rewrite(outp);
readln(inp,n);
max: =0;
min: =0;
c: =0;
for i: =1 to n do
begin
read(f1,a);
if i=1 then
b: =a;
if a> max then
max: =a;
k: =a-c;
c: =a;
if k< 0 then
begin
k: =abs(k);
min: =min+k;
if k> min then
min: =k;
end;
end;
max: =max-b;
write(outp,max,' ',min);
close(inp);
close(outp);
end.