/*题意:求【1 to 10^9】范围内各位数字之和为s的数的个数;  思路:定义dp[i][j] (i = 1 to 9, j = 1 to 81),表示位数为i的数各位数之和为j的数的个数。dp[i][j] = (i - 1位数最低位全部补0) + (i - 1位数最高位补j - k {k| 1 <= k <= 9} )。所以转移方程就是  dp[i][j] = dp[i-1][j] + sum(dp[i-1][j - 1] , dp[i-1][j-2] ,  ...  , dp[i-1][j-9]);

ps:注意s = 1 的时候是10而不是9,因为10^9也算在s = 1里边

My Code:*/

#include <iostream>#include <fstream>#include <cstring>

using namespace std;

int dp[15][85];

int main(){//fstream cin("data.in");

int i, j, k;    memset(dp, 0, sizeof(dp));for(i = 1; i <= 9; i++){        dp[1][i] = 1;    }for(i = 2; i < 10; i++){for(j = 1; j <= 81; j++){            dp[i][j] = dp[i-1][j];for(k = 1; k <= 9 && j - k >= 0; k++){                dp[i][j] += dp[i-1][j-k];            }        }    }int s, ans;while(cin >> s){if(s == 1)    {cout << "10\n"; continue;}for(ans = 0, i = 1; i < 10; i++){            ans += dp[i][s];        }        cout << ans << endl;    }return 0;}

Ural_1353. Milliard Vasya's Function(DP)相关推荐

  1. URAL 1353 Milliard Vasya's Function DP

    题目:click here 分析:dp[i][j] 表示i位数字,当前数字和为j的个数.dp[i][j] = dp[i-1][j] + dp[i-1][j-k] 前面表示在i-1位数后面加零,后面表示 ...

  2. ural 1353. Milliard Vasya's Function

    http://acm.timus.ru/problem.aspx?space=1&num=1353 题意:输入一个s,求从1-10^9的数中各位数字之和是s的个数; 思路:采用一个0-81的数 ...

  3. 一句话题解(20170801~20170125)

    8.1 bzoj 4720 noip2016 换教室 floyd预处理+期望(薛定谔的猫) bzoj 4318 OSU! 三次函数期望值 从一次.二次推得 8.2 bzoj 1076 状压+期望DP ...

  4. My97DatePicker日历控件日报、每周和每月的选择

    My97DatePicker日历控件日报.每周和每月的选择 1.设计源代码 <%@ page language="java" import="java.util.* ...

  5. Wdatepicker日期控件的使用指南

    示例2-3-1 起始日期简单应用 示例2-3-2 alwaysUseStartDate属性应用 示例2-3-3 使用内置参数 示例 2-4-1: 年月日时分秒 示例 2-4-2 时分秒 示例 2-4- ...

  6. 动态规划走楼梯_动态规划问题为什么要画表格?

    ❝ 本文是我的 91 算法第一期的部分讲义内容.91 算法第一期已经接近尾声,二期的具体时间关注我的公众号即可,一旦开放,会第一时间在公众号<力扣加加>通知大家. ❞ 动态规划可以理解为是 ...

  7. ExtJS 的工具条及菜单

    Efs Frame 中的下拉菜单: 1 <div xtype="tbar"> 2 3 <div text="->"></di ...

  8. My97DatePicker日历插件

    My97DatePicker具有强大的日期功能,能限制日期范围,对于编写双日历比较简便. 注意事项: My97DatePicker目录是一个整体,不可以破坏 My97DatePicker.html 是 ...

  9. 网页打印javascript:window.print()

    在做B/S项目开发时.难免会遇到网页打印问题! 可以用css控制, @media print .a {display:block} .b {display:hidden} 好像是这样.把你不想打印的部 ...

最新文章

  1. java future 线程 状态_手把手带你了解Java线程的实现方式及生命周期原理
  2. Python基础教程:内置类型之比较
  3. [ZZ]职场白领必读:《如何成为PPT高手》(秋叶出品,完整版免费下载)
  4. “Paper + Code”才是研读论文的正确姿势 | PaperDaily #02
  5. 【QGIS入门实战精品教程】3.3:QGIS如何打开ArcGIS创建的文件数据库(GDB)?
  6. JavaFX技巧9:请勿混用Swing / JavaFX
  7. 【数论】【Polya定理】poj1286 Necklace of Beads
  8. 新概念二册 Lesson 15 Good news佳音 ( 陈述句直接引语变间接引语)
  9. Pycharm远程服务器无法显示图片
  10. 火星特约 | Uniswap的UNI对DEX格局的影响
  11. 关于JavaScript谷歌浏览器报错常见问题
  12. 重新试用了office与wps.感觉这次wps好多了.
  13. Week8 作业 C - 班长竞选 SCC Kosaraju HDU - 3639
  14. GBase8s数据库GRANT 语句
  15. linux系统如何设置程序开机自启动
  16. ubuntu14.04+caffe2
  17. Nature 重大发现:癌基因竟不在染色体上?第一作者吴思涵亲身解读!
  18. AMD锐龙Ryzen CPU系列安装黑苹果MacOS 10.14 Mojave安装教程
  19. 【linux驱动开发】i2c驱动框架之温湿度传感器htu21d
  20. 【统计数据集GT的分布情况】

热门文章

  1. codevs 2185 最长公共上升子序列--nm的一维求法
  2. JS重新来过之------------[String对象]
  3. C语言中指针的初始化和赋值
  4. C++中cstring和int互换
  5. 栈区,堆区,全局区,文字常量区,程序代码区详解(程序中不同类型数据所在区)
  6. C,C++,C#note
  7. java 随机生成10个整数_Java:随机生成10个整数(1-100),对生成的序列进行排序,并插入一个任意数...
  8. python能干啥、实际生活-学习Python可以做什么?从事哪些岗位?
  9. 计算机系统中数据加工过程中,数据库系统复习题-第1章绪论
  10. 4位加法器的设计代码verilog_一个简单的8位处理器完整设计过程及verilog代码