摘要: 说实在的,有点惭愧,这题,本来想用更好的办法,但是时间复杂度更高了。朴素的办法就是打表,从1-1000000打一个统计1-n中的合格数的表。递归枚举其中的数字:View Code 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<cstdlib> 5 using namespace std; 6 int const N = 20; 7 int l,r,n,m,num,sl[N],sr[N]; 8 int pow10[8],sl2[N],sr2[N]; 9 阅读全文
posted @ 2013-05-04 18:27 诺小J 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 题意:有一位售票员现在要将手中的一系列连续的票卖给客人,而且是卖出连续的票给客人,而现在卖出的票的编号的数位之和不能小于k这个正整数,求按照这样的规则我能售票给多少位乘客。算法合集之《浅谈数位类统计问题》当中就讲到过,要我们以进制叉树的形式来具象化所有的数的情况。我们就是要找出l到r中的连续数超过k的组数,尽可能的多。但是现在关于合并子树的问题就是,其中有一部分客人手机的票超过了k,并找有一部分超过k的部分,那么这就使得我们再累加子树的时候添加了困难的地方。现在引入一个dp的思想,说实话此类的问题这样的思想还是比较先进的,就是难得想到。Dp[i][j][m]其中有co,rest两个值,其中表示 阅读全文
posted @ 2013-05-04 13:22 诺小J 阅读(506) 评论(0) 推荐(0) 编辑