QOJ.ac

QOJ

Time Limit: 1.0 s Memory Limit: 512 MB Total points: 100

#8916. 無人空中物流

Statistics

在 Иннополис 舉行的 2224 年全俄資訊奧林匹亞競賽中,配送工作由能夠製造自身複製體的新一代機器人負責。人們不用離開家,就能直接透過窗戶收取配送物品。

一開始只有一個配送機器人。任何時刻,最上方的機器人都可以在自己正上方製造一個或多個新機器人。這樣就形成了一列機器人。每個機器人的高度等於一層樓的高度。

problem_8916_2cec9e95003a1a2bc810f460027c8fba.png

配送過程中,由相同機器人複製體組成的直列會沿著宿舍樓由左向右移動。機器人的資料庫中有已下訂單的清單,每筆訂單都指定了需要送達的窗戶。當機器人直列經過某筆訂單對應的窗戶時,如果直列中有一個機器人位於該窗戶的高度,就可以完成配送。

problem_8916_bc33b258e69338a249f5e6ec502264e2.png

移動時,機器人組成的結構可能遇到障礙物。通過障礙物後,只有原本位於障礙物上方的機器人會繼續移動。它們會落到障礙物緊後方的地面上,仍然形成垂直的一列,並且可以繼續移動、製造新的複製體及配送訂單。

problem_8916_772ef11f4035a651d756e291095c86d4.png

障礙物與窗戶之間的距離足夠大,因此機器人在通過障礙物的過程中不會經過窗戶。

每配送一筆訂單,負責配送的公司就能獲得 $p$ 個加密盧布。製造一個新機器人的成本為 $c$ 個加密盧布。最終利潤等於配送訂單的總收入減去製造所有機器人的總成本。公司希望讓利潤最大。同時,公司不必完成所有訂單,機器人也可以在任何時刻停下並終止配送過程。

求公司能獲得的最大利潤。

輸入格式

第一行包含四個整數 $n,m,c,p$($0\le n,m\le 100000$,$1\le c,p\le 10^6$),依序表示障礙物的數量、資料庫中的訂單數量、製造一個機器人複製體的成本,以及配送一筆訂單的價格。

接下來 $n+m$ 行按照機器人直列沿宿舍由左向右移動時遇到的順序,描述障礙物和需要配送訂單的窗戶。每行包含兩個整數 $t_i,h_i$($1\le t_i\le 2$,$1\le h_i\le 10^6$):物件的類型 $t_i$($1$ 表示障礙物,$2$ 表示窗戶),以及 $h_i$,表示障礙物以樓層為單位的高度,或窗戶所在的樓層。

保證恰好有 $n$ 個物件的類型為 $1$,其餘 $m$ 個物件的類型為 $2$。

輸出格式

輸出一個數,表示能獲得的最大利潤。

子任務

子任務 分數 限制:$n$ 限制:$m$ 額外限制 必要子任務
$1$ $24$ $n\le 100$ $m\le 100$ $h_i\le 100$
$2$ $12$ $n=0$
$3$ $14$ $n=1$
$4$ $15$ $m=1$
$5$ $17$ $c=1,p=10^6$;所有障礙物的高度均為 $1$
$6$ $18$ 範例、$1$–$5$

範例

輸入格式 1

2 3 2 6
1 2
2 3
1 1
2 6
2 2

輸出格式 1

4

輸入格式 2

1 3 1 5
2 2
2 1
1 9
2 1

輸出格式 2

9

說明

第一個範例的一種最優配送策略如下方九幅圖所示。其中,完成第二筆訂單不會增加利潤。

problem_8916_a0312dbb9a5d9460cef548fa217b957c.png

在第二個範例中,只需複製機器人一次來配送第一筆訂單,再使用得到的機器人系統配送第二筆訂單;為了配送第三筆訂單而額外複製機器人,在經濟上並不划算。

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.