e-olymp
Задачи

Лесенка

опубликовано 27.06.12, 21:33:45

По условию n(0<=n<=1000) и k(1<=k<=n). Если n=0, то k не может принимать никаких значений?

опубликовано 15.04.14, 16:58:09

Во второй строке записано n целых чисел, не превосходящих по модулю 1000 ...

В трех тестах числа превосходят по модулю 1000.

опубликовано 27.05.18, 0:18:40

Написал алгоритм для работы с введеным массивом - 30% Добавил в конец 0 - 80% добавил в начало и в конец 0 - 100% -__-

опубликовано 16.12.19, 11:34:10

include<iostream>

using namespace std;

int main(){ int i,j=0,a,b,mas[1001],max; cin>>a; for(i=1;i<=a;i++) cin>>mas[i]; cin>>b; mas[0]=0; mas[a+1]=0;

for(i=1;i<=a+1;i++){
max=mas[j];
for( j=i-b;j<i;j++){
    if(j<0)j=0;
    if(max<mas[j]) max=mas[j];
    }
mas[i]=max+mas[i];                
}
    cout<<mas[a+1]<<endl;

}

опубликовано 04.02.20, 13:26:47

var A:array[-1000..1002] of longint; j,n,i,k,t:longint; function max(a,b:longint):longint; begin if a>b then max:=a else max:=b; end; begin readln(N); n:=n+1; for i:=2 to n do read(a[i]); readln(k); for i:=1 to n+1 do begin t:=a[i-1]; for j:=i-1 downto i-k do t:=max(t,a[j]); a[i]:=a[i]+t; end; writeln(a[n+1]); end.