zoukankan      html  css  js  c++  java
  • 母函数例题

    有1克、2克、3克、4克的砝码各一枚,能称出哪几种重量?各种重量各有几种可能方案?

    考虑用母函数来求解:

    G(x)=(1+x+x^2+x^3…)*(1+x^2+x^4+…)*(1+x^3+x^6+…)

    #include"iostream"
    using  namespace  std;
    const  int _max=10001;
    int c1[_max],c2[_max];//c1是保存各项质量砝码可以组合的数目;c2是中间量,保存每一次的情况;
    int main()
    {
       int nNum;
       int i,j,k;
       while(cin>>nNum)
       {
           for(i=0;i<=nNum;++i)
           {
               c1[i]=1;
               c2[i]=0;                   
           }                            
            for(i=2;i<=nNum;++i)
            {
                for(j=0;j<=nNum;++j)
                  for(k=0;k+j<=nNum;k+=i)
                  {
                     c2[j+k]+=c1[j];                       
                  }                    
              for(j=0;j<=nNum;++j)
              {
                  c1[j]=c2[j];
                  c2[j]=0;                   
              }
            }
            cout<<c1[nNum]<<endl;
       }   
        return  0;
    }

  • 相关阅读:
    爬虫之字体解密
    【大数据】PySpark 使用 FileSystem 操作 HDFS
    数据读取保存(五)
    Spark SQL 数据源(三)
    hive 之 DML 操作(六)
    【Python】散列的一种实现
    【Python】插入记录并获取其自增ID(PyMysql)
    sbt 编译打包(六)
    Spark SQL (二)
    2022年的第一篇
  • 原文地址:https://www.cnblogs.com/QQbai/p/2127017.html
Copyright © 2011-2022 走看看