#P16857. [GKS 2021 #F] Trash Bins
[GKS 2021 #F] Trash Bins
题目描述
在你居住的城市 Kickstartland 中,有一条特别长的街道,街上有 栋房子。这条街道的长度为 , 栋房子均匀分布在街上,即第 栋房子位于位置 ,第 栋房子位于位置 ,依此类推。任意两栋房子 和 之间的距离为 ,其中 表示 的绝对值。
其中一些房子的门前有垃圾桶。这意味着这些房子的主人倒垃圾时无需行走。然而,对于门前没有垃圾桶的房子的主人,他们必须走向某个门前有垃圾桶的房子(要么向左,要么向右)。
为了节省时间,每个房子的主人总是将垃圾带到离自己房子最近的垃圾桶处。如果两个垃圾桶距离该房子一样近,则主人可以走向其中任意一个。
给定房子的数量 ,以及哪些房子门前有垃圾桶的描述,请计算出每个房子的主人倒垃圾所需行走的距离之和。你可以假设至少有一栋房子门前有垃圾桶。
输入格式
输入的第一行给出测试用例的数量 。接下来有 个测试用例。每个测试用例由两行组成。
每个测试用例的第一行包含一个整数 ,表示街道上房子的数量。
每个测试用例的第二行包含一个长度为 的字符串 ,表示哪些房子门前有垃圾桶。如果字符串 的第 个字符等于 ,则表示第 栋房子门前有垃圾桶;否则,如果等于 ,则表示第 栋房子门前没有垃圾桶。
输出格式
对于每个测试用例,输出一行,格式为 Case #x: y,其中 是测试用例编号(从 开始), 是每个房子的主人倒垃圾所需行走的距离之和。
2
3
111
6
100100
Case #1: 0
Case #2: 5
提示
对于第 个测试用例,每个房子门前都有垃圾桶,因此没有房主需要行走倒垃圾。
对于第 个测试用例,第 栋和第 栋房子的主人门前有垃圾桶,因此他们无需行走。第 栋房子的主人将走向第 栋房子,距离为 。第 、 和 栋房子的主人将走向第 栋房子,距离分别为 、 和 。
限制条件
。
的长度等于 。
的每个字符为 或 。
中至少有一个字符 。
测试集 1
。
测试集 2
。
翻译由 DeepSeek V4 Pro 完成