zoukankan      html  css  js  c++  java
  • CSU 1021 从m个不同元素中取出n (n ≤ m)个元素的所有组合的个数,叫做从m个不同元素中取出n个元素的组合数。组合数的计算公式如下: C(m, n) = m!/((m

    题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82974#problem/B

    解题思路:这个题目就是求因子的个数, m!/((m-n)!*n!)等于m到n的阶乘除以m-n的阶乘,即求m到n中因子的个数减去m-n到1的因子的个数即可

    程序代码:

    #include <iostream>
    using namespace std;
      int t,m,n,i;
    int main()
    {
    
        cin>>t;
        while(t--)
            {
            cin>>m>>n;
          int   r=0,w=0;
            for( i=m-n+1;i<=m;i++)
            {
                   int  s=i;
                while(s>1)
                {
                    if(s%2!=0||s==0) break;
                    r++;
                    s/=2;
                }
            }
            for(i=2;i<=n;i++)
            {
               int  s=i;
                 while(s>1)
                 {
                    if(s%2!=0||s==0)  break;
                    w++;
                    s/=2;
                }
            }
            cout<<r-w<<endl;
    
        }
        return 0;
    }
    版权声明:此代码归属博主, 请务侵权!
  • 相关阅读:
    C#开发微信门户及应用(6)--微信门户菜单的管理操作
    C#开发微信门户及应用(5)--用户分组信息管理
    Django
    Django
    Django
    Django
    Django
    Django
    6.1
    Django
  • 原文地址:https://www.cnblogs.com/www-cnxcy-com/p/4652473.html
Copyright © 2011-2022 走看看