未知:数列1——题解

题目描述:
从前有一个数列:
{X0=1;
{Xn=AX(n-1)+B;
小x想知道当n变得无穷大的时候,abs(Xn)是否会变成无穷大。

输入:
有若干行,每行表示一个测试数据。每行有两个整数A,B,其中a=A/1e9,b=B/1e9。

输出:
与输入行数一致,每行包含小写的yes或no,其中yes表示Xn无穷大,反之亦然。

样例输入
0 1
2000000000 1

样例输出
no
yes

————————
并不贴代码(因为这是纯数学题,代码都是次要的)
首先经过类比推导出:
Xn=a^n+b((a^n-1)+(a^n-2)+…+a^0);①
①(保证一切合法)通过等比数列转换得到
Xn=a^n+b((a^n)-1)/(a-1);②
②(保证一切合法)通分得到
Xn=(a+b-1)((a^n)-1)/(a-1)+1;③
观察①不难发现当b=0且a=1时不成立。
但是当b!=0的时候a=1成立。
观察③也不难发现a+b-1=0时不成立。
观察任意式子发现当-1<=a<1时不成立(原理:分数的平方会使得数字越来越小,将会趋近无穷小)。

对代码仅需要注意一点。
不要按照题面说的将AB除1e9,就算你开double也过不了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值