P15175 [SWERC 2021] Ice Cream Shop
题目描述
海滩上有 $n$ 个小屋完美地排成一条直线,小屋 $1$ 在最左侧,且对于所有 $1 \le i \le n - 1$,小屋 $i+1$ 位于小屋 $i$ 右侧 $100$ 米处。小屋 $i$ 中有 $p_i$ 个人。
还有 $m$ 个冰淇淋摊贩,也与所有小屋完美地对齐在一条直线上。第 $i$ 个冰淇淋摊贩的店铺位于第一个小屋右侧 $x_i$ 米处。所有冰淇淋店铺的位置互不相同,但它们可能与某个小屋位于同一位置。
你想开设一个新的冰淇淋店,并且想知道你的店铺的最佳位置是什么。你可以将你的冰淇淋店放在海滩上的任意位置(不一定距离第一个小屋为整数距离),只要它与小屋和其他冰淇淋店铺对齐即可,即使该位置已经存在另一个冰淇淋店或小屋。你知道,人们只会来你的店铺,如果它严格比任何其他冰淇淋店更靠近他们的小屋。
如果每个住在小屋里的人都想恰好购买一个冰淇淋,那么在你最优地选择店铺位置的情况下,你最多可以卖出多少个冰淇淋?
输入格式
第一行包含两个整数 $n$ 和 $m$($2 \le n \le 200\,000$,$1 \le m \le 200\,000$)—— 分别表示小屋的数量和冰淇淋摊贩的数量。
第二行包含 $n$ 个整数 $p_1, p_2, \ldots, p_n$($1 \le p_i \le 10^9$)—— 每个小屋中的人数。
第三行包含 $m$ 个整数 $x_1, x_2, \ldots, x_m$($0 \le x_i \le 10^9$,且对于 $i \ne j$ 有 $x_i \ne x_j$)—— 每个冰淇淋店铺的位置。
输出格式
输出通过最优选择新店铺的位置可以卖出的冰淇淋的最大数量。
说明/提示
在第一个样例中,你可以将店铺(下图中标为橙色)放在第一个小屋右侧 $150$ 米处(例如),这样它对于前两个小屋(分别有 $2$ 人和 $5$ 人)来说是最近的店铺,总共可以卖出 $7$ 个冰淇淋。
:::align{center}

:::
在第二个样例中,你可以将店铺放在第一个小屋右侧 $170$ 米处(例如),这样它对于最后两个小屋(分别有 $7$ 人和 $8$ 人)来说是最近的店铺,总共可以卖出 $15$ 个冰淇淋。
:::align{center}

:::
翻译由 DeepSeek 完成