poj3181
来源:互联网 发布:刷qq会员软件 编辑:程序博客网 时间:2024/06/11 01:11
Dollar Dayz
Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 7649 Accepted: 2855
Description
Farmer John goes to Dollar Days at The Cow Store and discovers an unlimited number of tools on sale. During his first visit, the tools are selling variously for $1, $2, and $3. Farmer John has exactly $5 to spend. He can buy 5 tools at $1 each or 1 tool at $3 and an additional 1 tool at $2. Of course, there are other combinations for a total of 5 different ways FJ can spend all his money on tools. Here they are:
1 @ US$3 + 1 @ US$2 1 @ US$3 + 2 @ US$1 1 @ US$2 + 3 @ US$1 2 @ US$2 + 1 @ US$1 5 @ US$1Write a program than will compute the number of ways FJ can spend N dollars (1 <= N <= 1000) at The Cow Store for tools on sale with a cost of $1..$K (1 <= K <= 100).
Input
A single line with two space-separated integers: N and K.
Output
A single line with a single integer that is the number of unique ways FJ can spend his money.
Sample Input
5 3
Sample Output
5
题意:N可以用1到K的之来组合,有多少种方案。
思路:这题就用当做完全背包来做,但是这个数据会超出long long int所以开了一个MOD,大于MOD时分两部分输出就可以了。
代码:
#include<iostream>#include<algorithm>#include<cstring>#include<cstdio>using namespace std;const long long int MOD=1e18;long long int d1[1005],d2[1005];int main(){ int N,K; while(scanf("%d%d",&N,&K)!=EOF) { int i,j; memset(d1,0,sizeof(d1)); memset(d2,0,sizeof(d2)); d2[0]=1; for(i=1;i<=K;i++) { for(j=i;j<=N;j++) { d1[j]=d1[j]+d1[j-i]+(d2[j]+d2[j-i])/MOD; d2[j]=(d2[j]+d2[j-i])%MOD; } } if(d1[N])cout<<d1[N]; cout<<d2[N]<<endl; } return 0;}
阅读全文
0 0
- poj3181
- poj3181
- poj3181
- poj3181
- poj3181
- poj3181 Dollar Dayz dp
- poj3181(完全背包)
- poj3181-完全背包+高精度
- POJ3181 Dollar Dayz
- poj3181 Dollar Dayz
- 【POJ3181】【Dollar Dayz】
- 【POJ3181】【Dollar Dayz】
- POJ3181--Dollar Dayz
- POJ3181 Dollar Dayz
- POJ3181 Dollar Dayz(DP)
- POJ3181 Dollar Dayz
- POJ3181 Dollar Dayz
- POJ3181-Dollar Dayz
- C标准库之一:assert.h
- interface和abstract
- javascript深入理解js闭包
- 手写面板实例
- 神经网络和深度学习(一)
- poj3181
- keyCode键码值对照表
- JS 截取字符串(支持中英文混合)
- IdHttpServer实现webservice
- 导入特定用户
- 自来水管道 (并查集+贪心==kruskal)
- webSql基础用法
- 用typescript开发AngularJS应用
- 事件委托和事件代理