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

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

Оптимизация Матрицы

면접 대비

시간 제한1초메모리 제한1024 MB

요약
한 노드를 골라 양쪽으로 최대 k개의 이웃을 0으로 만들고, 고른 노드의 가중치를 (1+d)배로 바꿀 때 전체 합의 최댓값을 구합니다.
난이도

보통10점 중 4점

유형
배열, 누적 합, 슬라이딩 윈도우
정답자
아직 제출이 없습니다

문제

Искусственный интеллект, поддерживающий работу Матрицы --- сложная система, поэтому Архитектор решил попробовать оптимизировать ее.

Эту систему можно представить в виде nn последовательно соединенных узлов. Каждый узел обладает специальной характеристикой w_iw\_i --- вычислительной важностью.

Архитектор хочет выбрать некоторый узел и распространить его действие на kk соседних узлов в одном и в другом направлении. Если в каком-то из направлений узлов меньше чем kk, то он распространит его действие на столько узлов, сколько есть. Будем считать, что он распространил действие выбранного узла суммарно на dd узлов. Тогда вычислительная важность выбранного узла станет равна (1+d)⋅w_i(1 + d) \cdot w\_i, а вычислительная важность узлов, на которое распространилось его действие, будет равна 00.

Помогите Архитектору Матрицы понять, какую максимальную суммарную вычислительную важность системы можно получить, выполнив указанное действие.

입력

В первой строке входных данных дается два целых числа nn и kk --- количество вычислительных узлов и то, на сколько узлов распространяется действие выбранного узла с одной стороны (1⩽n⩽2⋅1051 \leqslant n \leqslant 2 \cdot 10^5; 0⩽k⩽2⋅1050 \leqslant k \leqslant 2 \cdot 10^5).

Во второй строке через пробел следуют nn положительных чисел w_1,w_2,…,w_nw\_1, w\_2, \dots, w\_n (1⩽w_i⩽5⋅1051 \leqslant w\_i \leqslant 5 \cdot 10^5) --- вычислительная важность каждого из узлов.

출력

В первой и единственной строке выходных данных выведите одно целое число --- максимальную вычислительную важность системы, которую можно получить.

예제2

  1. 예제 1

    입력
    3 1
    1 3 2
    
    예상 출력
    9
    
  2. 예제 2

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