zoukankan      html  css  js  c++  java
  • HDU 1028

    生成函数。这是一种特殊的计数方法,系数即为所要计数的结果。

    多个多项式相乘,每个多项式表示一种选择。在本题中,有(1+x+x^2+....)(1+x^2+x^4+....)......

    表示,第一个数只能是1可以无数次,第二个数只能是2,可取无数次。。。。

    #include <iostream>
    #include <cstdio>
    #include <algorithm>
    #include <cstring>
    #define N 130
    using namespace std;
    
    int c1[N],c2[N];
    
    int main(){
    	for(int i=0;i<=120;i++){
    		c1[i]=1;c2[i]=0;
    	}
    	for(int i=2;i<=120;i++){
    		for(int j=0;j<=120;j++){
    			for(int k=0;k+j<=120;k+=i)
    			c2[k+j]+=c1[j];
    		}
    		for(int j=0;j<=120;j++)
    		c1[j]=c2[j],c2[j]=0;
    	}
    	int n;
    	while(scanf("%d",&n)!=EOF){
    		printf("%d
    ",c1[n]);
    	}
    	return 0;
    }
    

      

  • 相关阅读:
    linux安装jenkins
    linux安装python3.8
    python类继承多态
    python字典排序
    第一篇
    第十一周编程总结
    2019春第十周作业
    2019年寒假作业1
    2019年寒假作业3
    学期总结
  • 原文地址:https://www.cnblogs.com/jie-dcai/p/4006729.html
Copyright © 2011-2022 走看看