QOJ.ac

QOJ

実行時間制限: 5 s メモリ制限: 1024 MB 満点: 27

#5850. 糖果店

統計

经营一家糖果店非常困难!你必须优化各种各样的事务。最近,你一直在销售一种非常受欢迎的糖果,名叫 Whizboppers。这些糖果腐烂得非常快,这使得它们具有以下特性:

  • 你必须每天早上从供应商那里购买新的 Whizboppers。
  • 你必须使用当天早上从供应商那里购买的盒子来销售 Whizboppers。

你可以从供应商那里订购包含任意整数克数的 Whizboppers 盒子。

每天最多有 $k$ 个人光顾你的商店,从第一个人开始,他们会选择花费 $1$ 到 $C$ 分(包含 $1$ 和 $C$)之间的整数金额购买 Whizboppers。你以每克 $1$ 分的价格出售 Whizboppers;因此,如果一个人想花 $4$ 分,你将给该人正好 $4$ 克糖果。你可以通过给该人一个 $4$ 克的盒子,或者一个 $2$ 克的盒子和两个 $1$ 克的盒子来实现。

你需要订购的最少盒子数量是多少,才能确保无论每个人订购多少,你总能满足所有人的需求?

注意:当一个人选择购买多少糖果时,你知道其他人已经购买了多少,但你不知道未来的人会购买多少。

例如,如果每天最多有 $2$ 个人光顾你的商店,且每人最多花费 $2$ 分($k=2, C=2$),你可以从供应商那里购买四个 $1$ 克的盒子。但你可以做得更好:如果你购买两个 $1$ 克的盒子和一个 $2$ 克的盒子,你就可以满足你的顾客。方法如下:

第一个人订购 $2$ 分时,你给出 $1$ 个 $2$ 克的盒子;此时第二个人订购 $2$ 分,你给出 $2$ 个 $1$ 克的盒子。 第一个人订购 $1$ 分时,你给出 $1$ 个 $1$ 克的盒子;此时第二个人订购 $2$ 分,你给出 $1$ 个 $2$ 克的盒子。

无论第一个人订购多少,你都可以分发盒子,使得第二个人仍然能得到正确数量的糖果。因此,对于 $k=2, C=2$,你可以用 $3$ 个盒子满足任何订购序列。

样例

输入格式 1

4
1 5
2 2
10 3
2 50

输出格式 1

Case #1: 3
Case #2: 3
Case #3: 19
Case #4: 11

说明

在第一个案例中,你可以购买一个 $1$ 克的盒子和两个 $2$ 克的盒子。在第二个案例中,你可以购买两个 $1$ 克的盒子和一个 $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.