아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Сбор монет

면접 대비

시간 제한3초메모리 제한256 MB

요약
캐릭터가 n개의 칸으로 이루어진 띠에서 t초 동안 이동하며 매초 생성되는 동전을 모을 때 얻을 수 있는 최대 동전 수를 구한다.
난이도

보통10점 중 6점

유형
동적 계획법, 그리디, 수학, 구현
정답자
아직 제출이 없습니다

문제

Недавно Виталик установил себе на телефон новую игру. Персонаж этой игры ходит по ленте, которая разбита на n клеток. Изначально все клетки пусты, и персонаж находится в одной из клеток. Каждую секунду в каждой клетке появляется некоторое количество новых монет в дополнении к старым, которые уже там находятся. За одну секунду главный герой может совершить одно из двух действий. Либо он остается на месте и собирает новые монеты, которые появятся в этой клетке. Либо переходит в соседнюю клетку и собирает те монеты, которые уже были там, а также те, которые появятся в ней в эту секунду.

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

입력

Первая строка содержит три целых числа n, t и start (1 ≤ n ≤ 250, 1 ≤ t ≤ 250, 1 ≤ start ≤ n) — количество клеток, количество ходов, которые может сделать игрок, а также стартовую позицию. Вторая строка содержит n целых чисел a1, ..., an (1 ≤ ai ≤ 300). i-е число обозначает количество монет, которые появляются каждую секунду в клетке i.

출력

Выведите единственное число — максимальное количество монет, которые может собрать игрок.

예제1

  1. 예제 1

    입력
    4 3 3
    2 5 1 1
    
    예상 출력
    19