题目名称 171. 打保龄球
输入输出 bowling.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 6
题目来源 Gravatarcqw 于2008-10-08加入
开放分组 全部用户
提交状态
分类标签
基本 字符串
分享题解
通过:40, 提交:167, 通过率:23.95%
GravatarAchilles 100 0.000 s 0.11 MiB Pascal
Gravatarbelong.zmx 100 0.000 s 0.11 MiB Pascal
GravatarEnAsn 100 0.000 s 0.11 MiB Pascal
Gravatarxiao T 100 0.000 s 0.12 MiB Pascal
Gravatar辨机ZN 100 0.000 s 0.12 MiB Pascal
Gravatar辨机ZN 100 0.000 s 0.12 MiB Pascal
Gravatarrottenwood 100 0.000 s 0.12 MiB Pascal
Gravatar0-0 100 0.000 s 0.17 MiB Pascal
Gravatar苏轼 100 0.000 s 0.17 MiB Pascal
Gravatargragon 100 0.001 s 0.11 MiB Pascal
本题关联比赛
20100920
noip_6
noip_6
20200612
关于 打保龄球 的近10条评论(全部评论)
注意区分局,轮,次的不同,题意叙述很准确,请放心。
倒是,累死了,被这水题虐……
(Ps:读行,读字符,读字符串,就用scanf!管用!详情请咨询:http://user.qzone.qq.com/337207188 日志)
GravatarTruth.Cirno
2011-11-02 09:35 3楼
我错了啊~~~~~~~~~~
GravatarEnAsn
2008-10-27 19:45 2楼
。。。那轮没打完不要统计数据。
Gravatarrottenwood
2008-10-27 19:29 1楼

171. 打保龄球

★   输入文件:bowling.in   输出文件:bowling.out   简单对比
时间限制:1 s   内存限制:128 MiB

【问题描述】

打保龄球是用一个滚球去打击十个站立的柱,将柱击倒。一局分十轮,每轮可滚球一次或多次,以击倒的柱数为依据计分。一局得分为十轮得分之和,而每轮的得分不仅与本轮滚球情况有关,还可能与后续一两轮的滚球情况有关。即某轮某次滚球击倒的柱数不仅要计入本轮得分,还可能会计入前一两轮得分。具体的滚球击柱规则和计分方法如下:

(1)若某一轮的第一次滚球就击倒全部十个柱,则本轮不再滚球(若是第十轮则还需另加两次滚球,不妨称其为第十一轮和第十二轮,并不是所有的情况都需要滚第十一轮和第十二轮球)。该轮得分为本次击倒柱数10与以后两次滚球所击倒柱数之和。

(2)若某一轮的第一次滚球未击倒十个柱,则可对剩下未倒的柱再滚球一次。如果这两次滚球击倒全部十个柱,则本轮不再滚球(若是第十轮则还需另加一次滚球),该轮得分为这两次共击倒柱数10与以后一次滚球所击倒柱数之和。

(3)若某一轮两次滚球未击倒全部十个柱,则本轮不再继续滚球,该轮得分为这两次滚球击倒的柱数之和。
总之,若—轮中一次滚球或两次滚球击倒十个柱,则本轮得分是本轮首次滚球开始的连续三次滚球击倒柱数之和(其中有一次或两次不是本轮滚球)。若一轮内二次滚球击倒柱数不足十个,则本轮得分即为这两次击倒柱数之和。下面以实例说明如下(字符“/”表示击倒当前球道上的全部的柱):

1 2 3 4 5 6 7 8 9 10 11 12
击球情况 / / / 72 9/ 81 8/ / 9/ / 8/  
各轮得分 30 27 19 9 18 9 20 20 20 20    
累计总分 30 57 76 85 103 112 132 152 172 192    

现在请你编写一个保龄球实时计分程序,用来计算和显示某轮结束后的得分情况。若某轮的得分暂时无法算出,则该轮得分不显示。

【输入格式】

输入仅有一行,为前若干轮滚球的情况,每轮滚球用一到两个字符表示,每一个字符表示一次击球,字符“/”表示击倒当前球道上的全部的柱,否则用一个数字字符表示本次滚球击倒的当前球道上的柱的数目,两轮滚球之间用一个空格字符隔开。

如上例对应的输入文件内容为:/ / / 72 9/ 81 8/ / 9/ / 8/

【输出格式】

输出共两行,第一行为每轮得分,第二行为到当前轮为止的总得分。每个得分之间用一个空格隔开。

【输入样例】

/ / / 72 9/ 81 8/ / 9/ / 8/

【输出样例】

30 27 19 9 18 9 20 20 20 20
30 57 76 85 103 112 132 152 172 192