麻将上听算法题 实现C代码

时间:2014-12-15 11:09:39
【文件属性】:

文件名称:麻将上听算法题 实现C代码

文件大小:25KB

文件格式:RAR

更新时间:2014-12-15 11:09:39

麻将 上听

题目: 你现有手中有一副牌,请判断手中牌是否已经上听,如果上听,则判断和哪几张牌。这里假设只有一种花色(条),只有1到9条, 即4个1条,4个2条,... 和 4个9条。 下面介绍一下和的方法: 14张牌中必须有一对将牌,即两个相同的牌。 其它牌由顺子和刻子组成,顺子的形式如123,456,789;刻子(三张相同的牌)的形式如111,222,...,999 比如, 假设你手中有1122333366778这13张牌。我们将其划分为下列集合: 123, 123, 678, 33 和 67, 那么我们就会得到顺子:123, 123, 678 和一对将牌 : 33, 最后剩下 67 。为了和牌, 我们必须将 67 组成一个顺子或刻子。但我们知道67不可能组成刻子,只能组成顺子,所以我们只要抓到 5, 就会将67 变成一个顺子: 567, 或者我们抓到 8, 就会使 67 也变成一个顺子: 678。为了和牌,我们需要5或8。 输入 第一行包含整数N。接下来是N组测试数据。每组测试数据包含13个数字(1-9), 代表你手中的13张牌. 数字间没有空格. 输出 对于每组测试数据, 首先打印"Case #k:", k是测试数据的编号, 从1开始编号。接下来N行, 如果已经上听则打印所有可以和的牌(升序);如果没有上听则输出NO ,每组测试数据间打印一个空行. 样例输入 4 11223333667781233455678999 1111333355557 1133466779999 样例输出 Case #1: 58 Case #2: 24578 Case #3: NO Case #4: NO


【文件预览】:
MaJiang
----题目.txt(1KB)
----Result.jpg(19KB)
----MaJiang.c(5KB)
----MaJiang.exe(25KB)

网友评论

  • 正是需要的,谢谢
  • 可以借鉴下算法,最后用java实现了~
  • 算法上可以借鉴一下。
  • 不错,改改能用
  • 资源很好 但是注释不是很清楚 总的说不错