В
Все
У
Українська література
Г
Геометрия
Д
Другие предметы
Э
Экономика
Г
География
О
ОБЖ
М
Математика
М
МХК
Х
Химия
Қ
Қазақ тiлi
Л
Литература
У
Українська мова
О
Обществознание
Ф
Физика
А
Английский язык
А
Алгебра
И
История
Б
Беларуская мова
Б
Биология
М
Музыка
П
Право
И
Информатика
П
Психология
В
Видео-ответы
Н
Немецкий язык
Ф
Французский язык
О
Окружающий мир
Р
Русский язык
artur282
artur282
22.08.2020 10:28 •  Информатика

Можете перевести с C++ на python?
#include

const int N=1E5;
int a[N], p[N], s[N];

int main() {
int n, k, i, j; std::cin >> n >> k;
for (i=0, j=0; i std::cin >> a[i];
if (a[i] > a[j]) {p[i] = i; j = i;} else p[i] = p[j];
}
for (i=n-1, j=n-1; i>=0; i--) {
if (a[i] >= a[j]) {s[i] = i; j = i;} else s[i] = s[j];
}
int m = 0, l = 0, r = k+1;
for (i=l, j=r; j int t = a[p[i]] + a[s[j]];
if (t > m) {l = p[i]; r = s[j]; m = t;}
}
std::cout << (l+1) << " " << (r+1);
}

Ответ:
PeaceMaker1337
PeaceMaker1337
26.03.2020 18:30

В задании исходный код программы введен немного неправильно, поэтому я решил его загуглить и нашел во с идентичными кодом без ответа. Код, вроде, рабочий, но я его серьезно не тестировал.

N = 1E5

a, p, s = [], [], []

def main():

       n = k = i = j = 0

       (n, k) = (int(input()), int(input()))

       p = [0] * n

       s = [0] * n

       for i in range(0, n):

               a.append(int(input()))

               if a[i] > a[j]:

                       p[i] = i

                       j = i

               else:

                       p[i] = p[j]

       

       j = n - 1

       for i in range(n - 1, -1, -1):

               if (a[i] >= a[j]):

                       s[i] = i

                       j = i

               else:

                       s[i] = s[j]

       

       m, l, r = 0, 0, k + 1

       i = l

       for j in range(r, n):

               t = a[p[i]] + a[s[j]]

               if t > m:

                       l = p[i]

                       r = s[j]

                       m = t

               i += 1;

       print(str(l + 1) + " " + str(r + 1))

if __name__ == "__main__":

       main()

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