- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目录
第一章 递推与动态规划
2001年普及组第1题--数的计数-----------------------ok------------------------
2003年提高组第3题--加分二叉树--------------------ok------------------------
2000年普及组第3题--乘积最大-----------------------ok------------------------
2003年普及组第2题--数字游戏-----------------------ok------------------------
2001年提高组第3题--统计单词个数-----------------ok------------------------
1997年普及组第3题--街道路径条数-----------------ok------------------------
2002年普及组第4题--过河卒--------------------------ok------------------------
1997年普及组第1题--统计正方形和长方形个数--ok------------------------
1997年提高组第3题--骑士游历-----------------------ok------------------------
2000年提高组第4题--方格取数-----------------------ok------------------------
2003年普及组第3题--栈--------------------------------ok------------------------
1996年提高组第3题--挖地雷--------------------------ok------------------------
1999年提高组第1题--拦截导弹-----------------------ok------------------------
2004年提高组第3题--合唱队形-----------------------ok------------------------
2001年普及组第4题--装箱问题-----------------------ok--------------------------
1996年提高组第4题--砝码秤重-----------------------ok--------------------------
第一章 递推与动态规划
2001年普及组第1题--数的计数
【问题描述】
我们要求找出具有下列性质数的个数(包含输入的自然数n):
先输入一个自然数n(n≤1000), 然后对此自然数按照如下方法进行处理:
(1)不作任何处理;
(2)在它的左边加上一个自然数,但该自然数不能超过原数的一半;
(3)加上数后,继续按此规则进行处理,直到不能再加自然数为止。
【输入格式】
输入文件count.in中只有一个数n
【输出格式】
输出文件count.out只有一行,该行只有一个数,表示求得的满足要求的数的个数。
【输入样例】
6
【输出样例】
6
【输入/输出样例说明】
输入数字6按以上处理方法,能得到如下的6个数字:
6
16
26
126
36
136
【官方测试数据】
序号 输入 输出 1 1 1 2 10 14 3 50 786 4 100 9828 5 198 195830
【分析】
题意分析
以f[i]表示i经处理能得到的数的个数。则:
1.如图1所示,1经处理,只能得到1本身(1个数)。因此f[1]=1;
2.如图2所示,2经处理,能得到的数的个数f[2]:
(1)2本身(1个数)。
(2)2前加1;对1继续处理,能得到的数个数为f[1];
因此,f[2]=1+f[1]=1+1=2。
3.如图3所示,3经处理,能得到的数的个数f[3]:
(1)3本身(1个数)。
(2)3前加1;对1继续处理,能得到的数个数为f[1];
因此,f[3]=1+f[1]=1+1=2。
4.如图4所示,4经处理,能得到的数的个数f[4]:
(1)4本身(1个数)。
(2)4前加1;对1继续处理,能得到的数个数为f[1];
(3)4前加2;对2继续处理,能得到的数个数为f[2];
因此,f[4]=1+f[1] +f[2]=1+1+2=4。
5.如图5所示,5经处理,能得到的数的个数f[5]:
(1)5本身(1个数)。
(2)5前加1;对1继续处理,能得到的数个数为f[1];
(3)5前加2;对2继续处理,能得到的数个数为f[2];
因此,f[5]=1+f[1] +f[2]=1+1+2=4。
原创力文档


文档评论(0)