P12927 [POI 2022/2023 R2] 车厢 / Wagony
题目背景
翻译来自于 [LibreOJ](https://loj.ac/p/5022)。
题目描述
**题目译自 [XXX Olimpiada Informatyczna – II etap](https://sio2.mimuw.edu.pl/c/oi30-2/dashboard/) [Wagony](https://szkopul.edu.pl/problemset/problem/UtJx9fM6UT2oxXFenSPjiz5C/statement/)**
在一维铁轨上停放着 $n$ 个车厢,初始时各车厢互不连接。每次操作可将相邻的两组已连接车厢合并,前提是两组车厢数量差不超过 $d$。合并耗时取决于两组车厢数量。你的任务是将所有车厢合并成一个含 $n$ 个车厢的列车。
合并含 $w$ 个车厢的组与含 $v$ 个车厢的组(满足 $|w-v| \leq d$)的成本由奇特函数 $(a w + b v) \bmod 1001$ 计算。
输入格式
第一行包含四个正整数 $n, d, a, b$ $(1 \leq n \leq 10^{16}, 1 \leq d, a, b \leq 1000)$,分别表示车厢总数、数量差上限和成本函数参数。
输出格式
输出一个整数,表示将 $n$ 个车厢合并成一个列车的最小成本。
说明/提示
**样例 1 解释**
我们将第一个车厢与第二个车厢连接(成本 $2$),第三个车厢与第四个车厢连接(成本 $2$),然后再与第五个车厢连接(成本 $3$),最后将两个形成的车厢组连接(成本 $5$)。
**附加样例**
1. $n=10, d=3, a=2, b=3$。
2. $n=10^5, d=1000, a=3, b=5$。
3. $n=10^{16}, d=300, a=3, b=5$。
详细子任务附加限制及分值如下表所示。
| 子任务编号 | 附加限制 | 分值 |
| :---: | :--: | :---: |
| $1$ | $n \leq 100000$ | $21$ |
| $2$ | $d \leq 300$ | $46$ |
| $3$ | 无附加限制 | $33$ |