| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2828 人关注过本帖
标题:想问个问题
取消只看楼主 加入收藏
随心
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
结帖率:100%
收藏
 问题点数:0 回复次数:6 
想问个问题
是这样的:
有一个数组,里面放着四种模式的数字的组合(可以是其它的数字,但必须是那四种组合),
例如:2,2    3,3,3    1,2,3,    4,4,4,4
其中每个数字最多不能超过4个,只能有一对组合是相同的(如2,2)

问题:如何判断这个数组中有 两个相同的数字 的组合?(如:5,5)

程序框架可是下面这样:
#include <iostream>
using namespace std;

bool IsDing(int Pai[], int n)
{
    ...
}

int main()
{
    //例如这里要判断9,9这个组合是否存在
    int cpg[] = {1,2,3, 3,3,3, 9,9} //不仅仅是这些,还可以任意组合
    if (IsDing(cpg, sizeof(cpg)/sizeof(int))
        cout << "有" << endl;
    else
        cout << "没有" << endl;
    return 0;
}

谁来给指点下,我写了好几个,都不行,郁闷了好几天了。给个思路也可以。
搜索更多相关主题的帖子: int 数字 cpg bool std 
2008-02-26 18:33
随心
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
收藏
得分:0 
排序我也想过,但那样会破坏原来的组合。比如:7,8,9    9,9 排序后就成了9,9,9 了
还有就是不可以用二维数组来做,这个本来是项目里的问题,用二维数组会破坏整体结构。

天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。
2008-02-26 18:55
随心
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
收藏
得分:0 
这个问题是我从项目里抽象出来的,描述的可能不是很标准,有不明白的可以说一下。谢谢了。

天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。
2008-02-26 18:56
随心
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
收藏
得分:0 
to 9楼:
如果是下面那种情况,你的算法判断不出来
int cpg[] = {1,1, 1,2,3, 3,3,3};

天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。
2008-02-26 22:39
随心
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
收藏
得分:0 
to 7楼:
仅仅统计相临的元素不行,例如:1,2,3,    3,4,5
你的算法也判断不出来。

天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。
2008-02-26 22:43
随心
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
收藏
得分:0 
在你的程序里,你定义的那个数组不符合规则
1,2,3, 3,9,9, 3,3应该这样组合才是:
1,2,3, 9,9, 3,3    这你的里面多了一个3
对了,这几个组合里面不能出现单张牌
只能是:一个对子(2张相同的牌,这种组合只能有一个),顺子(3张,如1,2,3),刻子(3张相同的牌,如1,1,1),杠子(4张相同的牌,如:1,1,1,1)
并且每个数字最多只能出现4次


现在的问题是:那个数组里面的数已经是组合好了的。只要从其中判断出有一个对子的组合即可。

[[it] 本帖最后由 随心 于 2008-2-26 23:37 编辑 [/it]]

天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。
2008-02-26 23:35
随心
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:12
帖 子:2577
专家分:250
注 册:2007-8-12
收藏
得分:0 
麻将。。

天之道,利而不害。圣人之道,为而不争。信言不美,美言不信。善者不辩,辩者不善。知者不博,博者不知。
2008-02-27 00:02
快速回复:想问个问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016323 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved