- 主题:求一个数列{an}的通项或赋值规律
数列{an}满足a(4n-3)=-1,a(4n-1)=1,a(2n)=a(n),给定一个很大的m求a(m)。虽然想到一个求a(m)的方法,但操作起来超出了中学知识范围。这个数列的通项表达式改怎么写?
--
FROM 221.223.193.*
递推确实是一种办法,但我感觉这个具体题目应该能有一个通项表达,现在就是不知怎么表达把一个很大的偶数一直二分到奇数,得到奇数后通项就好办了。
【 在 weiminglake 的大作中提到: 】
: 题我就不做了。
: 多说一句,不是所以数列都有通项的。有些会表达成a(1)=…,a(n)=f(a(n-1))…的类似形式,叫递推数列。
: 像这种题一般会求具体的a(2000)之类的。
: ...................
--
FROM 221.223.193.*
是这个思路,把一个偶数一直除以2得到奇数就行了。我能想到做法是把m转换成2进制,然后去掉2进制数尾部所有的0,得到奇数。如果所得奇数2进制表达数形式为"??01",a(m)=-1,对应形式如果是"??11",a(m)=1。想知道有没有一个函数能实现这种2进制转化过程?
【 在 bluehearts 的大作中提到: 】
: 通项不会求。但是m一直除以2总会得到个奇数吧,这不就有答案了吗。 不会超过中学知识范围啊
--
FROM 221.223.193.*