母函数的一些简单想法(HDU2110)

// 母函数解决的问题
// n 种物品,每个有一个wi,组合成total价值有多少种组合方案
// 将组合问题转换为 幂级数上的相乘问题(important) (Orz)
// #include<iostream>
// #include<cstdio>
// #include<cstring>
// using namespace std;
// int n,a[105],b[105],m,s[10010],t[10010];
// int main()
// {
//     while(~scanf("%d",&n),n)
//     {
//         m=0;
//         for(int i=0; i<n; i++)
//         {
//             scanf("%d%d",&a[i],&b[i]);
//             m+=(a[i]*b[i]);
//         }
//         if(m%3!=0)
//         {
//             printf("sorry\n");
//             continue;
//         }
//         memset(s,0,sizeof(s));
//         memset(t,0,sizeof(t));
//         m/=3;
//         for(int i=0; i<=b[0]&&i*a[0]<=m; i++)
//         {
//             s[i*a[0]]=1;
//         }
//         for(int i=1; i<n; i++)
//         {
//             for(int j=0; j<=m; j++)
//                 for(int k=0; k<=b[i]&&k*a[i]+j<=m; k++)
//                 {
//                     t[k*a[i]+j]+=s[j];
//                     t[k*a[i]+j]%=10000;
//                 }
//                 for(int j=0; j<=m; j++)
//                 {
//                     s[j]=t[j];
//                     t[j]=0;
//                 }
//         }
//         if(s[m]!=0)
//         {
//             printf("%d\n",s[m]);
//         }
//         else printf("sorry\n");
//     }
//     return 0;
// }

原文地址:https://www.cnblogs.com/newstartCY/p/11563395.html

时间: 2024-11-13 06:54:03

母函数的一些简单想法(HDU2110)的相关文章

关于递归的一些简单想法

我的主力博客:半亩方塘 递归是我们在编程过程中用到的一种思想,当一个函数自身调用自身的时候,无论是直接或者间接地调用,都属于递归,下面对于什么时候用到递归以及怎么用递归,谈一点我个人初步的想法. 什么时候用到递归 当我们要解决的问题有着 重复执行的基本操作 的时候,可以考虑使用递归 用递归思想进行编程的时候需主要需要注意的几点内容 首先是 递归上限 ,通常是一个指出递归开始位置的 有效范围内 的对象,一般作为主调函数传输的参数:其次是递归下限 ,主要用来确定结束递归的操作,一定要有退出递归的标志

自行学习XAML控件后的简单想法(作业一)

由于自身专业水平的欠佳,我对于XAML控件的学习并不深刻,只在简单了解过后产生了一二想法,也许十分荒谬,就减省地谈谈.以下五种控件,是我在学习后,并不十分看好或有所疑虑的. Canves 在浏览XAML Controls Gallery上各种控件的简单介绍时,这个控件引起我注意,它通过坐标轴控制每个内容的分布,是一个用于布局的控件. 首先,这个Canvas控件的展示样例图,让我想起了很多应用中的画面,例如:                              然而在我查询相关资料后,我发现

权限的简单想法

1.权限每个人进来看到不同的内容,有着不同的功能.比如boss可以设置下面人的权限,权限放大,权限缩小.开辟新权限,分配角色,角色分配人员,权限分配这些等等. 2.具体的shiro还是喜欢自己做权限的还是自己决定吧,用了shiro,退出之后,起作用啦.自己做权限ajax即使的做刷新,用着是方便,就是太费时间. 3.举个例子,boss给一个部门经理一些权限,部门经理可以把自己的权限发放给其他人,比如手下的高管..等等.这个比较的细致.(我自己的权限可以分派给其他的人员) 4.sql语句.如下: 2

c++,继承,也称基类,派生类,自己研究吧,很简单想法

#include <iostream>using namespace std;//基类Peopleclass People{public: People(char *name, int age); void display();protected: char *m_name; int m_age;};People::People(char *name, int age): m_name(name), m_age(age){}void People::display(){ cout<<

[分布式系统学习] 6.824 LEC2 RPC和线程 笔记

6.824的课程通常是在课前让你做一些准备.一般来说是先读一篇论文,然后请你提一个问题,再请你回答一个问题.然后上课,然后布置Lab. 第二课的准备-Crawler 第二课的准备不是论文,是让你实现Go Tour里面的crawler.Go Tour里面原有的实现是串行的,并且可能爬到相同的url.要求让你并行并去重. 简单想法就是,为了实现并行,爬每个url都是用goroutine:为了实现去重,每次开爬就把url放到map中. 不过这里有个知识点,Crawler函数最后返回成功,所有url都要

HDU 题目分类

基础题:1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029.1032.1037.1040.1048.1056.1058.1061.1070.1076.1089.1090.1091.1092.1093.1094.1095.1096.1097.1098.1106.1108.1157.1163.1164.1170.1194.1196.1197.1201.1202.1205.1219.1234.1235.1236.1248.1

降噪自动编码器(Denoising Autoencoder)

降噪自动编码器(Denoising Autoencoder) 起源:PCA.特征提取.... 随着一些奇怪的高维数据出现,比如图像.语音,传统的统计学-机器学习方法遇到了前所未有的挑战. 数据维度过高,数据单调,噪声分布广,传统方法的“数值游戏”很难奏效.数据挖掘?已然挖不出有用的东西. 为了解决高维度的问题,出现的线性学习的PCA降维方法,PCA的数学理论确实无懈可击,但是却只对线性数据效果比较好. 于是,寻求简单的.自动的.智能的特征提取方法仍然是机器学习的研究重点.比如LeCun在1998

经验1

纯属转载,有参考价值,更要共勉! 知乎原文 题主似乎没有明确自己是博士生,以下假设为博士生. 1.首先,请以一个局外人的理智角度,对你的导师进行如下分类: ① 圈内大牛,高水平论文很多,目前自己仍在亲力亲为参与科研工作,请转2 ② 简历里面有一些高水平论文,但是似乎并不能算是大牛,请转3 ③ 其他情况,请转4 2.这一种情况是比较理想的,个人认为你的关于论文的疑惑,其实可以尽量多和你的导师交流.不说科研这么大的话题,单单就写论文来说,其实有很多的技巧和潜规则,与其自己去试错,不如从导师那里多取取

UVALive 4728 Squares (平面最远点对)

题意:n个平行于坐标轴的正方形,求出最远点对的平方 题解:首先求出凸包,可以证明最远点对一定是凸包上的点对,接着可以证明最远点对(每个点的对踵点)一定只有3*n/2对 接着使用旋转卡壳找到最远点对,但是白书上的算法过于麻烦 所以我看到一个简单想法就是: 可以直接枚举每个点,接着枚举这个点对应最远的点(三角形面积最大) 这儿对踵点满足一个单峰性质,所以可以使用类似双指针方式维护 //n个平行于坐标轴的正方形,求出最远点对的平方 #include<cstdio> #include<cstri