#P13062. [GCJ 2020 #2] Incremental House of Pancakes
[GCJ 2020 #2] Incremental House of Pancakes
Description
每天早晨,增量煎饼屋的厨房员工会准备好当天所有的煎饼,并将它们分成两堆。初始时,左边的煎饼堆有 个煎饼,右边的煎饼堆有 个煎饼。
这家餐厅的顾客行为非常一致:第 个到达的顾客(从 开始计数)总是会点 个煎饼。当第 个顾客下单 个煎饼时,你会从当前煎饼数量较多的那一堆中取出 个煎饼(如果两堆煎饼数量相同,则从左边的那一堆中取)。如果两堆煎饼的数量都不足 个,餐厅将关闭,且第 个顾客不会得到任何煎饼。你不会从两堆煎饼中各取一部分来完成一个订单。
给定两堆煎饼的初始数量,你需要计算有多少顾客会被服务,以及餐厅关闭时两堆煎饼的剩余数量。
Input Format
输入的第一行包含测试用例的数量 。接下来是 个测试用例。每个测试用例占一行,包含两个整数 和 ,分别表示左边和右边煎饼堆的初始数量,如上所述。
Output Format
对于每个测试用例,输出一行 Case #x: n l r,其中 是测试用例编号(从 开始), 是被服务的顾客数量, 和 分别是餐厅关闭时左边和右边煎饼堆的剩余数量。
3
1 2
2 2
8 11
Case #1: 1 1 1
Case #2: 2 1 0
Case #3: 5 0 4
Hint
样例解释
在样例 #1 中,第一个顾客从右边的煎饼堆中取走 个煎饼,剩下每堆各有 个煎饼。第二个顾客想要 个煎饼,但两堆煎饼都不够,尽管总共有 个煎饼。
在样例 #2 中,第一个顾客从左边的煎饼堆中取走 个煎饼,因为两堆煎饼数量相同。这样左边剩下 个煎饼,右边剩下 个煎饼。第二个顾客想要 个煎饼,你从右边的煎饼堆中取给他,清空了右边的堆。当第三个顾客到来时,两堆煎饼都不足 个,因此不再完成订单。
在样例 #3 中,第一个顾客从右边的煎饼堆中取走 个煎饼,左边剩下 个煎饼,右边剩下 个煎饼。第二个顾客也从右边的煎饼堆中取走 个煎饼,此时两堆各有 个煎饼。第三个顾客从左边的煎饼堆中取走 个煎饼,左边剩下 个煎饼,右边剩下 个煎饼。第四个顾客从右边的煎饼堆中取走 个煎饼,右边剩下 个煎饼。第五个顾客取走 个煎饼后清空了左边的堆,此时两堆煎饼都不足以满足第六个顾客的需求。
数据范围
- 。
测试集 1(5 分,可见评测结果)
- 。
- 。
测试集 2(14 分,隐藏评测结果)
- 。
- 。
翻译由 DeepSeek V3 完成
京公网安备 11011102002149号