Python динамическое программирование

Здаров гики и почти гики, только только начал изучать динамическое программирование, это моя первая задача на эту тему, до этого только прочитал 1 сайт и понял суть. Итак, вот ссылка на задачу: http://acm.timus.ru/problem.aspx?space=1&num=1017
Вот код:
k=int(input())
a=[]
a.append(0)
a.append(1)
a.append(1)
a.append(2)
a.append(2)
s=0
for j in range(5,k+1):
if j%2==1:
for i in range(1,j//2+1):
s+=a[i]
a.append(s)
else:
for i in range(1,j//2):
s+=a[i]
s=s+a[j//2]-1
a.append(s)
s=0
print(a)
23 июня 2017 в 00:07
Ближайшие курсы

Как начать свой путь в разработке?
Онлайн-курс
25
февраля
Интенсив «Формулы и методы для планирования в Excel»
Онлайн-курс
25
февраля
Костыли и велосипеды: как не нужно писать код на C#
Онлайн-курс
25
февраля
Новые статьи

Архитектор информационных систем — новая профессия
39100

«Дизайн — инструмент для изменения мира»
114810

Разбираемся в типах Kotlin — Unit, Nothing, Any (и null)
97800
Новые вебинары

Правовые аспекты работы с блокчейн-проектами
08 апреля390

Работа тестировщика на разных IT-проектах
31 марта10

Как зарабатывать на разработке мобильных приложений? Как запустить свой стартап?
31 марта740
Новые темы

Mythological Riddles
java eclipse
0
ответов