HOJ 10444 The milliard Vasya's function(简单背包)
来源:互联网 发布:电脑没有网络图标 编辑:程序博客网 时间:2024/05/22 14:26
在不大于1000000000的数里,各个数位上的数字之和为s的数有多少个。
很容易想到通过背包来做,但是如果只是简单按数位递推,如何排除0112和112这种重复的情况呢?
处理的办法是不把0作为物品,但位数i不仅仅从i-1递推,而是从0到i-1都要统计进来。
#include <algorithm>#include <iostream>#include <stdlib.h>#include <string.h>#include <stdio.h>#include <math.h>using namespace std;int dp[10][82];void init(){ memset(dp, 0, sizeof(dp)); for(int k = 0; k < 10; k++) dp[k][0] = 1; for(int i = 0; i < 10; i++) dp[1][i] = 1; for(int k = 2; k < 10; k++) for(int t = 0; t < k; t++) for(int i = 1; i < 10; i++) for(int j = i; j < 82; j++) dp[k][j] += dp[t][j - i];}int s;int main(){// freopen("10444.in", "r", stdin); init(); while(scanf("%d", &s), s) { int ans = dp[9][s]; if(s == 1) ans++; printf("%d\n", ans); } return 0;}
0 0
- HOJ 10444 The milliard Vasya's function(简单背包)
- hnu 10444 The milliard Vasya's function(母函数)
- Milliard Vasya's Function
- Milliard Vasya's Function(Ural_1353)
- Ural1353-Milliard Vasya's Function
- URAL1353---Milliard Vasya's Function(简单数位dp)
- URAL 1353 Milliard Vasya's Function(DP)
- Ural 1353 Milliard Vasya's Function(DP)
- URAL 1353 Milliard Vasya's Function(数位DP)
- Timus 1353. Milliard Vasya's Function
- Ural 1353. Milliard Vasya's Function 暴搜
- URAL 1353. Milliard Vasya's Function(dp)
- ural 1353. Milliard Vasya's Function
- ural 1353. Milliard Vasya's Function(dp)
- ural 1353. Milliard Vasya's Function
- ural 1353. Milliard Vasya's Function
- Ural 1353 Milliard Vasya's Function
- Milliard Vasya's Function-Ural1353动态规划
- STL之priority_queue的用法,优先队列
- 14.Hibernate的组件映射
- 单例模式一二三
- 学车之路
- hadoop 回收站
- HOJ 10444 The milliard Vasya's function(简单背包)
- Effective STL 第1条:慎重选择容器类型
- 【圣诞】
- OpenStack 最小化安装配置(六):Glance服务配置
- Android通过tcpdump抓包
- 1.编写一个程序,他从标准输入读取C源代码,并验证所有的花括号都正确的成对出现。
- andriod之ContentProvider读取外部存储视屏
- CStringArray 字符串数组的使用 以及调试时怎么Dump出其中的内容
- UML九种图(四)——活动图