1047 邮票面值设计

 

1999年NOIP全国联赛提高组

 时间限制: 1 s
 空间限制: 128000 KB
 题目等级 : 钻石 Diamond
 
 
 
题目描述 Description

 

给定一个信封,最多只允许粘贴N张邮票,计算在给定K(N+K≤40)种邮票的情况下(假定所有的邮票数量都足够),如何设计邮票的面值,能得到最大值MAX,使在1~MAX之间的每一个邮资值都能得到。

   

    例如,N=3,K=2,如果面值分别为1分、4分,则在1分~6分之间的每一个邮资值都能得到(当然还有8分、9分和12分);如果面值分别为1分、3分,则在1分~7分之间的每一个邮资值都能得到。可以验证当N=3,K=2时,7分就是可以得到的连续的邮资最大值,所以MAX=7,面值分别为1分、3分。

输入描述 Input Description

N和K

输出描述 Output Description

每种邮票的面值,连续最大能到的面值数。数据保证答案唯一。

样例输入 Sample Input

3 2

样例输出 Sample Output

1 3

MAX=7

-------------------------------------------------------------------------qwq-------------------------------------------------------------------------------

无限orrrrrrrrrrrrrrrrrrz!!!

1.tmd由于memset(f,0x3f,sizeof(f))放在了f[0]=0的前面,于是bug了好久2333333333!一定要记住一定要记住这个该死的错误!

2.说一下连续的bug时我的做法,以后借鉴:

=>(1)首先我将程序的每一步都检验有没有错误,先排除掉其他没有错误的情况,在着重在错误的地方;

=>(2)然后找出错误,写一个简单的程序,和错误的那一步原理做法相同,然后继续将所有相关的变量都输出继续缩小错误的范围;如果这个好了,就和原来的对比,一定是细节哪里错了,眼睛瞪大来!

=>(3)一定不要轻易的去查题解,这样的话能够很快的ac然而没有什么卵用。也一定不要轻易的去找人帮助,1如果是你自己你一定不希望别人这样打扰你2来也没有什么卵用两个人的时间一同浪费简直是谋杀(。。。);

3.教训:

=>(1)如果不是轻易的非常有把握的水题,多写点注释以便找bug。养成好习惯,反正用不了一两分钟;

=>(2)一定要自己独立去完成不要轻易的找答案,那样的话进步的范围也很小;

=>(3)弱弱的题也不要轻视,很可能怎么调也调不好,水题正可以用来练找bug的速度;

4.代码:我的超时了,不过懒得改了,要注意是一个地方优化了一下四个点就全过,不然只能过三个点;

-----------------------------------------------------------------------TAT--------------------------------------------------------------------------------

优化版: