ABBYY Cup 3.0 - Finals (online version)
2014-02-21 22:28
288 查看
A 开个数组记录一下
View Code
#include <iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<stdlib.h> #include<cmath> #include<vector> #include<queue> using namespace std; #define LL long long #define N 1000000 #define INF 0xfffffff int dp[11][N+10]; int o[11][N+10]; int main() { int i,j; LL n; for(i = 0 ;i <= 9 ; i++) { dp[i][0] = 0; } for(i = 0; i <= 9; i++) for(j = 1; j <= N ;j++) { int mm = i; int k = j; while(k) { int x = k%10; mm = max(mm,x); k/=10; } if(mm>=j) { dp[i][j] = dp[i][0]+1; o[i][j] = j-mm; } else { dp[i][j] = dp[i][j-mm]+1; o[i][j] = o[i][j-mm]; } } while(cin>>n) { if(n<=N) { cout<<dp[0] <<endl; continue; } LL m = n%N,nm = n/N; LL s = 0; int k = 0; for(i = nm ; i >= 0; i--) { int y = i,ma = 0; while(y) { int x = y%10; y/=10; ma = max(ma,x); } if(i!=nm) m = N+k; s += dp[ma][m]; k = o[ma][m]; if(k==0&&i!=0) { s++; k = -ma; } } cout<<s<<endl; } return 0; }
View Code
相关文章推荐
- #error#优化#Model#理解下面这句话错误所导致的错误:"传入一个对象,那么你就拥有了对象的属性"2
- 网络编程之路---6
- VM中Centos克隆后致MAC重复故障解决
- PHP案例 网站会员管理设计
- 计算一个字节中存在着多少个二进位0
- HTML5商城开发五 实现返回页面顶部
- 质心问题
- poj 3070 Fibonacci(矩阵快速幂,简单)
- 笔记
- iOS安全攻防(十九):基于脚本实现动态库注入
- iOS程序启动过程笔记
- PHP案例 网页计数器设计
- vijos 1234 最小生成树kruskal
- adobe字体
- Bootstrap
- C#主要控件名简写对照表
- SOA服务设计与实现的几个语言无关的原则速记
- PHP案例之聊天室设计
- 坚持学linux--它就是未来
- 2014-人生旅途的节点