阅读以下说明和流程图,回答问题将解答填入对应栏内。 [说明] 已知递推数列:a(1)=1,a (2s)= a (s),a(2s+1)=a (s)+a (s+1)(s 为正整数)。试求该数列的第n项与前n项中哪些项最大?最大值为多少? 算法分析:

admin2009-02-15  35

问题 阅读以下说明和流程图,回答问题将解答填入对应栏内。
[说明]
   已知递推数列:a(1)=1,a (2s)= a (s),a(2s+1)=a (s)+a (s+1)(s 为正整数)。试求该数列的第n项与前n项中哪些项最大?最大值为多少?
   算法分析:该数列序号分为奇数或偶数两种情况做不同递推,所得数列呈大小有规律的摆动。设置a数组,赋初值a (1)=1。根据递推式,在循环中分项序号s (2~n)为奇数或偶数作不同递推:每得一项 a (s),即与最大值max 作比较,如果a (s)>max,则max=a(i)。最后,在所有项中搜索最大项(因最大项可能多于一项),并打印最大值max。
   [问题]
   将流程图中的(1)~(5)处补充完整。
   注:流程图中(1)循环开始的说明按照“循环变量名:循环初值,循环终值,增量”格式描述。
   [流程图]

选项

答案(1)for s=2 to n (2) mod(s,2)=0 (3) a(s)=a(s/2) (4) a(s)=a(s+1)/2+a(s-1)/2) (5) max=a(s)

解析
转载请注明原文地址:https://jikaoti.com/ti/WTW7FFFM
0

最新回复(0)