zoukankan      html  css  js  c++  java
  • 2015 G 牌型种数

    题目描述
    小明被劫持到X赌城,被迫与其他3人玩牌。
    一副扑克牌(去掉大小王牌,共52张),均匀发给4个人,每个人13张。
    这时,小明脑子里突然冒出一个问题:
    如果不考虑花色,只考虑点数,也不考虑自己得到的牌的先后顺序
    自己手里能拿到的初始牌型组合一共有多少种呢?
    输出
    请输出该整数,不要输出任何多余的内容或说明文字。

    #include <bits/stdc++.h>
    using namespace std;
    int ans;
    //发13次,手里13张牌  每种牌有5种选择,可以选 也可以不选 选最多4张
    void dfs(int c,int s){//调用次数,手里的张数
        if(c == 13 && s == 13){
            ans++;
            return;
        }
        if(c > 13 || s > 13)
            return;
        for(int i = 0; i <= 4; i++)
            dfs(c + 1,s + i);
    }
    int main(){
        ios::sync_with_stdio(0);
        cin.tie(0);
        cout.tie(0);
        dfs(0,0);
        cout << ans << endl;
        return 0;
    }
    View Code

    可以先想一想这个过程,而不是一味看题目

    每个人最后手里13张牌,发牌每个人13次

    比如说1,可以不选,也可以选,可以选的话,有1,2,3,4张

     

  • 相关阅读:
    easyui datagrid 前后台代码
    JVM
    序列化
    Android UI设计
    多线程
    泛型
    字符串
    B+树:MySql数据库索引是如何实现的
    大数据判存算法:海量数据中快速判断某个数据是否存在
    陌生单词
  • 原文地址:https://www.cnblogs.com/xcfxcf/p/12301587.html
Copyright © 2011-2022 走看看