/*
注意的事项:是输出小于 10^n的正整数的个数哦!开始的时候总比样例输出多一个数,
纠结了好久,原来是 0加了进去了!
dpI[n][m]表示的是第n位添加数字m(0....9)的构成单调递增数个数 
dpD[n][m]表示的是第n位添加数字m(0....9)的构成单调递减数个数 
*/
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
long long dpI[105][10];
long long dpD[105][10];
void init(){
for(int i=1; i<10; ++i)
dpI[1][i]=dpD[1][i]=1;
for(int i=2; i<=100; ++i){
for(int j=0; j<10; ++j){
if(j!=0){//单调递增的数一定没有数字0,因为前边的数字最小为 1 
for(int k=j; k>=1; --k)
dpI[i][j]+=dpI[i-1][k];
}
for(int k=j; k<10; ++k){//单调递减的数字中可以有0,但是第二位为0时,第一位不能为0 
if(i==2 && k==0) continue;
dpD[i][j]+=dpD[i-1][k]; 
}
}
}
}
int main(){
init();
int n;
while(cin>>n){
long long sum=0;
for(int j=1; j<=n; ++j){
for(int i=0; i<10; ++i)
sum+=dpI[j][i]+dpD[j][i];
sum-=9;
}
cout<<sum<<endl;
}
return 0;
}

本文转自 小眼儿 博客园博客,原文链接:http://www.cnblogs.com/hujunzheng/p/3913685.html,如需转载请自行联系原作者

ZZUOJ1196: 单调数相关推荐

  1. 2023年你最值得了解的信息技术-AI篇(一)

    列表 85 - 其他 辽宁省 大连优联智能 自动化生产线提供商 未融资 大连优联智能是一家自动化生产线提供商,集规划设计.制造安装.系统集成.视觉检测及AI数据智能分析于一体,可为汽车车身及发动机制造 ...

  2. 【洛谷】选数---深度优先搜索+单调不降去重

    题目描述 传送门:https://www.luogu.com.cn/problem/P1036 已知n个整数x1,x2-xn,以及一个整数k(k<n).从n个数字中任选k个数字相加,可分别得到一 ...

  3. 『ACM-算法-二分法』在单调递增序列a中查找小于等于x的数中最大的一个(即x或x的前驱)

    写在前面:我们主要还是分享算法的模板,而不是去刨析算法的原理! 定义: 二分答案是指在答案具有单调性的前提下,利用二分的思想枚举答案,将求解问题转化为验证结果. 流程: 首先需要估计答案的上下界,然后 ...

  4. [TJOI2011] 书架(线段数优化dp + 单调栈)

    problem luogu-P1295 首先可以列出一个暴力 dpdpdp 转移. 设 f(i):f(i):f(i): 到 iii 为止划分若干组,每组最大值的和 的最小值. 然后枚举最后一组,即 i ...

  5. 将一个数组中的值按逆序重新排放。_六十五、下一个更大的数系列,单调栈解决方法...

    「@Author:Runsen」 ❝ 编程的本质来源于算法,而算法的本质来源于数学,编程只不过将数学题进行代码化. 「---- Runsen」 ❞ 据说,放张小姐姐觉得照片可以提高阅读量,图是来源学校 ...

  6. 六十五、下一个更大的数系列,单调栈解决方法

    @Author:Runsen 编程的本质来源于算法,而算法的本质来源于数学,编程只不过将数学题进行代码化. ---- Runsen 据说,放张小姐姐觉得照片可以提高阅读量,图是来源学校的2020新生. ...

  7. 高数——单调有界定理

    单调有界定理 若数列{an}递增有上界(递减有下界),则数列{an}收敛,即单调有界数列必有极限.具体来说,如果一个数列单调递增且有上界,或单调递减且有下界,则该数列收敛. 根据数列有界的定义可知,如 ...

  8. 高数 | 为什么凹凸区间,单调区间不能并起来?因为一杯水不能灌满。

    1.举例子:单调区间 很显然f(x)在(-无穷,0),和(0,+无穷)上都是减函数 如果改成"并",根据单调减函数的定义 设区间D 应该满足上述 设x1=1,x2=-1 很显然不满 ...

  9. 『ACM-算法-二分法』算法竞赛进阶指南--在单调递增序列a中查找大于等于X的数中最小的一个,即X或X的后继

    写在前面:我们主要还是分享算法的模板,而不是去刨析算法的原理! 定义: 二分答案是指在答案具有单调性的前提下,利用二分的思想枚举答案,将求解问题转化为验证结果. 流程: 首先需要估计答案的上下界,然后 ...

最新文章

  1. 写给那些想升职管理层的同学
  2. python 随机生成密码
  3. HTML5新增标签的汇总与详解
  4. 二维有限元方程matlab,有限元法求解二维Poisson方程的MATLAB实现
  5. C++(6)--初识循环while,do-while
  6. BZOJ 1845三角形面积并
  7. C++ —— C++引用
  8. 利用Python发送短信,用处多多
  9. ntp linux 使用,linux-ntp 使用
  10. 【MyBatis框架】高级映射-延迟加载
  11. 洛谷 P2495 [SDOI2011]消耗战
  12. 计算机运行命令jar,jar文件打开教程
  13. 【组合数学】组合恒等式总结 ( 十一个组合恒等式 | 组合恒等式证明方法 | 求和方法 ) ★
  14. 2022“杭电杯”中国大学生算法设计超级联赛(5)杭电多校第五场
  15. mysql中sql语句日期比较,mysql sql语句中 日期函数的使用
  16. 【嵌入式开发】Raspberry Pi 树莓派性能测试
  17. 001定位技术和算法有哪些?
  18. 重庆市涪陵创新计算机学校图片,重庆市涪陵创新计算机学校寝室图片、学校环境好吗...
  19. 从零开始学习主成分分析
  20. [ARC084]E - Finite Encyclopedia of Integer Sequences 乱搞

热门文章

  1. Linux开关机命令:shutdown,reboot,halt,init之间的区别
  2. LED和LCD的区别
  3. Fatfs文件系所有函数总结
  4. JUC并发编程八 并发架构--ReentrantLock
  5. Java:多线程之线程池
  6. 分享关于搭建高性能WEB服务器的一篇文章
  7. Redis的Pub/Sub模式
  8. [转载] 信息系统项目管理挂靠合同(协议)范例2
  9. 读书笔记之:C++ Primer (第4版)及习题(ch12-ch18) [++++]
  10. [Modules]PrestaShop插件 模块 – 产品推荐模块 随机展示推荐产品