Ignatius and the Princess III HDU – 1028 -生成函数or完全背包计数

Ignatius and the Princess III HDU – 1028 -生成函数or完全背包计数

 HDU – 1028 

step 1:初始化第一个多项式 也就是 由 1的各种方案 组 成 的多项式 初始化系数为 1。临时区 temp初始化 为 0

step 2:遍历后续的n – 1 个 多项式 ,第二重 for  j  代 表 的 存 储 结 果 的 多 项 式的次数,k 代表 当前 第 i 的 多项式的次数

通过计算发现两个多项式相乘 其中一个 系数为1和 0 组成,运算时可以初始化系数数组为0 ,然后 由另一个的系数 与之相加即可得到     

G(x)=(1+x+x2+x3+x4+…..)(1+x2+x4+x6+x8+……)(1+x3+x6+x9+….)……..(1+xn)

#include<bits/stdc++.h>
using namespace std;
#define maxn 234
int ans[maxn],tp[maxn],n;
int main()
{
    while(~scanf("%d",&n))
    {
        for(int i=0; i<=n; i++)
            ans[i]=1,tp[i]=0;
        for(int i=2; i<=n; i++)
        {
            for(int j=0; j<=n; j++)
                for(int k=0; k+j<=n; k+=i)
                    tp[j+k]+=ans[j];
            for(int j=0; j<=n; j++)
                ans[j]=tp[j],tp[j]=0;
        }
        printf("%d\n",ans[n]);
    }
    return 0;
}

  

转载于:https://www.cnblogs.com/SDUTNING/p/10261600.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101178.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 500-内部服务器错误_win7无法启动server服务错误1083

    500-内部服务器错误_win7无法启动server服务错误1083我们在操作win10系统电脑的时候,常常会遇到win10系统提示http500内部服务器错误的情况,想必大家都遇到过win10系统提示http500内部服务器错误的情况吧,那么应该怎么处理win10系统提示http500内部服务器错误呢?我们依照在ie浏览器中点击右上角的设置按钮,在弹出的菜单中点击“internet选项”按钮;在internet选项界面切换到【高级】选卡;这样的步骤就行…

    2022年8月12日
    8
  • Eclipse和JDK安装教程(22年8月)[通俗易懂]

    Eclipse和JDK安装教程(22年8月)[通俗易懂]初次学习,安装软件会耗费许多时间。这很不值得,我们可以做更多别的事情。不妨试试这篇简单的帖子,希望节省你的宝贵时间。第一次顺利,以后安装就轻车熟路,这就是好的开始。

    2025年9月3日
    14
  • linux常用net命令「建议收藏」

    linux常用net命令「建议收藏」图:

    2022年5月8日
    139
  • linux默认安装路径在哪里_linux常用的20个命令

    linux默认安装路径在哪里_linux常用的20个命令Nginx安装安装路径 /usr/local/nginx配置文件 /usr/local/nginx/conf/nginx.conf启动:进入到/usr/local/nginx/sbin下,./nginx关闭:进入到/usr/local/nginx/sbin下 ./nginx -s stop 重启:同上, -s reload停止 kill -9 线程号查看 ps -ef|grep nginxhttps://www.jianshu.com/p/9f2c162ac77c 可参考安装ng

    2022年8月19日
    19
  • android在eclipse环境下开发需要什么支持_eclipse环境配置教程

    android在eclipse环境下开发需要什么支持_eclipse环境配置教程eclipse中android环境配置java环境配置java下载去Oracle官网下载自己需要的java版本我这里选择的是windows的jdk8ps:下载需要登录自己Oracle账号,注册登录一下就行下载之后的exe文件双击开,安装到你需要安装的位置即可,我这里安装位置是D:\ProgramFiles\Java\jdk1.8.0_271环境配置在系统变量里面加入了变量JAVA_HOME,值为安装的位置然后在Path里面加入了%JAVA_HOME%\bin和%JAVA_HOME

    2022年10月5日
    3
  • 【Spring Boot】使用Spring Boot来搭建Java web项目以及开发过程

    一、SpringBoot简介SpringBoot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致力于在蓬勃发展的快速应用开发领域(rapidapplicationdevelopment)成为领导者。SpringMVC是非常伟大的框架,开源…

    2022年4月13日
    72

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号