题意

给定一个数\(n\),\(n≤10^{500,000}\),问\(n\)最少可以拆分成几个不降数的和。一个不降数是在十进制位下,从高位往低位看,每个数都不会比高位的数更小的数

做法

不降数可以拆成若干个形似\(1111...111\)的数相加
位数为\(l\)的全\(1\)数可以写成\(\dfrac{10^{l+1}-1}{9}\)

\(N=\sum\limits_{i=1}^k \dfrac{10^{a_i}-1}{9}\)
通过手玩可以进一步发现充分条件:\(9|k\)

写成\(N+9k=\sum\limits_{i=1}^{9k}10^{a_i}\)
枚举\(k\),判断\(N+9k\)的数位之和是否小于等于\(9k\)就好了

高精度加\(1\)复杂度是均摊的,\(O(位数)\)

最新文章

  1. android 瀑布流效果 保存地址
  2. Katana
  3. 为何PHP插入mysql的中文是乱码?【坑】
  4. [小北De编程手记] : Lesson 04 玩转 xUnit.Net 之 Fixture(下)
  5. PHP数组处理函数的使用array_reduce(二)
  6. MySQL进阶
  7. Navicat(连接) -1之HTTP 设置
  8. 遇到一个奇葩的问题,could not load the assembly file XXX downloaded from the Web
  9. 建立一个Hello World级别的Spring项目
  10. 在 linux x86-32 模式下分析内存映射流程
  11. mvn export runnable jar
  12. seq命令
  13. Keil C51中变量和函数的绝对地址定位问题
  14. 最好用的mysql密码忘记的解决方法
  15. 中国气象台api
  16. Windows录音API学习笔记(转)
  17. 其实想要完全理解MVC框架并不是太容易
  18. RunLoop已入门?赶紧来应用一下
  19. 【webpack学习笔记】a08-缓存
  20. Redis安全以及备份还原

热门文章

  1. Distance Dependent Infinite Latent Feature Model 阅读笔记1
  2. zabbix4.0的安装与配置
  3. Python爬虫小结
  4. Codeforces 1087B Div Times Mod(数学+暴力)
  5. java 利用POI 读取Execel数据的真实行数
  6. JMeter之If Controller深究一
  7. Coroutine 预激装饰器
  8. Java Properties的使用
  9. 大数据运维尖刀班 | 集群_监控_CDH_Docker_K8S_两项目_腾讯云服务器
  10. el-menu 菜单展示