robertva693
17.05.2020 12:50

До впливає на вибір засобів опрацювання даних?​

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Скотч7Рулит
07.02.2020 10:21
Procedure GetAB(x: integer; var a: integer; var b: integer);
begin
    a := 0;
    b := 1;
    while x > 0 do
    begin
        a := a + 1;
        b := b * (x mod 100);
        x := x div 100;
    end;
end;

var
    x, a, b: integer;

begin
    for x := 10000 to 2000000000 do
    begin
        GetAB(x, a, b);
        if (a = 3) and (b = 18) then
            Println(a, b, x);
    end;
end.

выдает такие значения
3 18 10118
3 18 10209
3 18 10306
3 18 10603
3 18 10902
3 18 11801
3 18 20109
3 18 20303
3 18 20901
3 18 30106
3 18 30203
3 18 30302
3 18 30601
3 18 60103
3 18 60301
3 18 90102
3 18 90201
3 18 180101

Выделенное наибольшее
0,0(0 оценок)
Ответ:
mariasmiles
27.06.2021 13:53

from collections import deque

 

n, k = map(int, input().split())

x, d, ssum = list(map(int, input().split())), deque(), 0

b = [(0,0) for i in range(n)]

for i in range(n):

   ssum += x[i]

   if i >= k :

       ssum -= x[i - k]

       if d[0] == i - k :

           d.popleft()

   while len(d) and x[d[-1]] >= x[i]:

       d.pop()

   d.append(i)

   if i >= k - 1:

       nb = (b[i-k][0] + x[d[0]] * ssum, i-k+2)

       b[i] = max(b[i-1], nb, key=lambda x: x[0])

i = n - 1

d = deque()

j = b[-1][1]

d.appendleft(j)

while i !=0:

   i -= 1

   j1 = b[i][1]

   if j-k>=j1 and j1 > 0 :

       d.appendleft(j1)

       j = j1

print(str(len(d)))

print(" ".join(map(str, d)))

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота