hdu 1398 Square Coins 母函数+完全背包
来源:互联网 发布:u盘低格后数据恢复 编辑:程序博客网 时间:2024/06/11 13:44
题目链接
思路:
还是典型的母函数的问法,改改板子就能过.这个题目变成了平方.
我们还是用x表示coin,可以构造这样一个母函数:(1+x+x^2+x^3.....)(1+x^4+x^8+...)(1+x^9+x^18+.....).....
注意到这里是的指数和第i个表达式是平方的关系,所以我们将板子对应的改成i*i<=n,k+=i*i即可。
#include<bits/stdc++.h>#define Ri(a) scanf("%d", &a)#define Rl(a) scanf("%lld", &a)#define Rf(a) scanf("%lf", &a)#define Rs(a) scanf("%s", a)#define Pi(a) printf("%d\n", (a))#define Pf(a) printf("%lf\n", (a))#define Pl(a) printf("%lld\n", (a))#define Ps(a) printf("%s\n", (a))#define W(a) while(a--)#define CLR(a, b) memset(a, (b), sizeof(a))#define MOD 1000000007#define inf 0x3f3f3f3f#define exp 0.00000001#define pii pair<int, int>#define mp make_pair#define pb push_backusing namespace std;typedef long long ll;const int maxn=1e5+10;int n;int ans1[301],ans2[301];int main(){while(~Ri(n)&&n){for(int i=0;i<=n;i++){ans1[i]=1;ans2[i]=0;}for(int i=2;i*i<=n;i++){for(int j=0;j<=n;j++){for(int k=0;k+j<=n;k+=i*i){ans2[k+j]+=ans1[j];}}for(int j=0;j<=n;j++){ans1[j]=ans2[j];ans2[j]=0;}}Pi(ans1[n]);} return 0;}
老方法,完全背包一样水过...
#include<bits/stdc++.h>#define Ri(a) scanf("%d", &a)#define Rl(a) scanf("%lld", &a)#define Rf(a) scanf("%lf", &a)#define Rs(a) scanf("%s", a)#define Pi(a) printf("%d\n", (a))#define Pf(a) printf("%lf\n", (a))#define Pl(a) printf("%lld\n", (a))#define Ps(a) printf("%s\n", (a))#define W(a) while(a--)#define CLR(a, b) memset(a, (b), sizeof(a))#define MOD 1000000007#define inf 0x3f3f3f3f#define exp 0.00000001#define pii pair<int, int>#define mp make_pair#define pb push_backusing namespace std;typedef long long ll;const int maxn=1e5+10;int cost[20];int dp[500]; int main(){int n;CLR(cost,0);for(int i=1;i<=17;i++)cost[i]=i*i;while(~Ri(n)&&n){CLR(dp,0);dp[0]=1;for(int i=1;i<=17;i++){for(int j=cost[i];j<=n;j++)dp[j]+=dp[j-cost[i]];}Pi(dp[n]);} return 0;}
阅读全文
0 0
- hdu 1398 Square Coins(母函数|完全背包)
- hdu 1398 Square Coins(母函数,完全背包)
- hdu 1398 Square Coins(母函数/完全背包)
- hdu 1398 Square Coins 母函数+完全背包
- hdu 1398 Square Coins 完全背包变形
- HDU 1398 Square coins 完全背包
- HDU-1398-Square Coins(完全背包)
- hdu 1398 Square Coins(母函数,DP)
- HDU/HDOJ 1398 Square Coins 母函数
- hdu 1398 Square Coins (母函数)
- hdu 1398 Square Coins (母函数)
- hdu 1398 Square Coins(母函数)
- hdu 1398 Square Coins(母函数)
- [母函数]HDU 1398 Square Coins
- Hdu 1398 Square Coins 母函数
- hdu-1398 Square Coins(母函数)
- HDU 1398 Square Coins(母函数)
- hdu 1398 Square Coins (母函数)
- 树控件示例
- Python
- 国内人脸识别研究现状2010年之前
- 马氏距离+协方差公式+无偏估计
- Codeforces Round #423 (Div. 2) B. Black Square
- hdu 1398 Square Coins 母函数+完全背包
- jenkins之安装篇
- java 访问权限
- svn版本控制
- Eclipse的第一个java项目
- JS编程训练 | 题4:数组中添加元素
- bower的安装和使用
- 手游服务端框架之消息线程模型
- 【JZOJ 5204】【GDOI2018模拟7.6】吃干饭