题目描述
滚骰(tou)子是一件有益身心健康的运动,因此骰子游戏可是一个很受年轻人欢迎的游戏。现在先介绍一下这个闻名遐迩的骰子游戏吧。
首先是主角:骰子。骰子就是很普通的骰子:骰子有六个面,分别标号1到6,三对面上的数字之和均为7。以下是骰子的一个图示。
然后我们介绍这个游戏的地图:一个R*C的网格图。骰子一开始的状态如上图所示(即上面为 1,下面为 6,左面为 4,右面为 3,前面为 2,后面为 5),且位置在左上角。
然后重头戏来了,你需要的操作就是滚动骰子。滚动骰子当然是有轨迹的。你需要从左到右滚动到右端,然后向下滚动一格然后在向左滚动到左端,再向下一格,如此反复…直到最下面一行为止。
游戏的目的就是请你计算出骰子到达每个格点时,骰子上方的数字之和。
输入
第一行包含两个整数 R 和 C。
输出
第一行包含两个整数 R 和 C。(注意这里,题目提示出错,应该是计算到达所有格子时上面数字之和。)
样例输入
3 2
样例输出
19
数据范围限制
对于50%的数据1<=R,C<=100
对于100%的数据 1<=R,C<=100000
提示
第一行包含两个整数 R 和 C。
思路:
一、使用一个数组记录骰子每一面的状态
二、通过奇偶行的较验,可以模拟骰子是向左还是向右滚动
三、骰子无论向左还是向右,都是四次一循环,所以我们模拟的时候,不需要全部模拟(全模拟会超时),只需要把足够四次循环进

该博客详细介绍了CCF 1158题目的骰子游戏,包括骰子的六个面及其数字关系,以及游戏地图的规则。游戏目标是计算骰子在R*C网格中每到达一个格点时,骰子上方数字之和。博主提供了思路,包括使用数组记录骰子状态,通过奇偶行判断滚动方向,模拟四次一循环的规律,以及处理超过int范围的结果。最后给出了可能的满分代码实现。
最低0.47元/天 解锁文章
956

被折叠的 条评论
为什么被折叠?



