QOJ.ac

QOJ

Límite de tiempo: 1 s Límite de memoria: 1024 MB Puntuación total: 100 Hackeable ✓

#17539. 減少無聊

Estadísticas

Moloco 是一間廣告技術公司,致力於幫助全球各地的公司優化線上廣告投放。透過 Moloco 的技術,網際網路使用者能看到更相關的廣告,而廣告主也能更有效地進行廣告投放。

宗書預測某位使用者將會造訪某個首頁總共 $2N$ 次,他希望向該使用者展示兩種類型的廣告(廣告 0 與廣告 1),每種各展示 $N$ 次。若每次造訪時都出現相同類型的廣告,使用者可能會對廣告感到厭倦,進而降低廣告效果。因此,他希望透過妥善安排這兩種廣告的順序,來最大化廣告效果。

為了量化廣告效果,Moloco 的工程師宗書定義了一個稱為「無聊度」的指標。對於 $i \leq j$,從第 $i$ 個到第 $j$ 個廣告組成的區間無聊度,定義為該區間內廣告 0 的數量與廣告 1 的數量的差值的絕對值。使用者最終感受到的無聊度,即為所有區間無聊度中的最大值。

例如,若廣告順序安排為 00110110,則從第 $3$ 個廣告到第 $7$ 個廣告的無聊度為 $|1 - 4| = 3$。由於該區間的無聊度最大,因此使用者最終感受到的無聊度也為 $3$。

儘管透過 Moloco 優異的演算法已經找出了能提升使用者參與度的廣告配置,但宗書為了驗證「無聊度」指標的有效性,決定嘗試降低無聊度。然而,由於廣告順序已經確定,若要降低無聊度,必須透過交換相鄰的兩個廣告來進行調整,每次交換的成本為 $1$。交換操作可以執行任意次數。

請問將使用者最終感受到的無聊度降低至 $K$ 以下(含 $K$)所需的最小成本是多少?

輸入格式

第一行包含兩個整數 $N$ 與 $K$,中間以空白分隔。($1 \le K \le N \le 500\,000$)

第二行包含一個長度為 $2N$ 的字串,由 $N$ 個 0 與 $N$ 個 1 組成,代表初始的廣告配置。

輸出格式

輸出將無聊度降低至 $K$ 以下(含 $K$)所需的最小成本。

若給定廣告順序的無聊度已經在 $K$ 以下,則輸出 0

可以證明對於所有可能的輸入,總是可以將無聊度降低至 $1$。換句話說,答案一定存在。

範例

輸入格式 1

4 2
00110110

輸出格式 1

1

輸入格式 2

4 2
11110000

輸出格式 2

3

輸入格式 3

4 1
10011001

輸出格式 3

2

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.