异或(另类斐波那契数列题)

从前,Apojacsleam家的水族箱里,养了一群热带鱼。

    在这几条热带鱼里,Apojacsleam特别喜欢一条叫做TbGx(请勿人肉)的热带鱼,所以每次都让她第一个吃食物。对于每一条鱼,Apojacsleam都有一个顺序,鱼会按照这个顺序排序,越靠前的地位越高。

   吃饱喝足是要睡觉的,这是人的刚需,也是鱼的刚需。

    如果TbGx吃了Apojacsleam的食物,她就会睡觉(睡觉时长远小于一天)。这时第二条鱼还是饥肠辘辘的,第二条鱼就可以吃掉TbGx,那么第二条鱼又会睡觉......

    注意:Apojacsleam养的鱼比Apojacsleam的智商高到不知道哪里去了,他们都是绝顶聪明的;而他们又是极其守规矩的,即他们不会多鱼分食一条鱼或者食物,只是按照顺序吃;当某一条鱼前面的鱼睡着以后,他可以选择不吃这条鱼,那么别的鱼(还活着的)也不会吃这条,即按照顺序的吃。

    一开始,水族箱里只有TbGx一条鱼(未成年),但是,一条鱼成长两天就会成年,成年后就可以繁殖(无性繁殖?别问我我不知道),一天能繁殖一个后代。小鱼也会吃鱼的偶!

   请问在前n天中,TbGx最多多少天可以吃饭?

    Apojacsleam不希望TbGx饿着,所以你必须在1s内回答。

输入描述:

输入数据有多组,每组一个正整数n,意义如“题目描述”

输出描述:

对于每组输入数据,一行输出:

即前n天中,最多有多少天TbGx可以吃饭。

示例1

输入

6

输出

4

说明

第1天,1条鱼,能吃;

第2天,1条鱼,能吃;

第3天,2条鱼,不能吃;

第4天,3条鱼,能吃;

第5天,5条鱼,能吃;

第6天,8条鱼,不能吃;。

思路:若一共有k 条鱼,考虑第k 条鱼,如果第k-1 条鱼睡着了,第 k 条鱼可以肆无忌惮地吃掉第k-1 条鱼,所以第k-1 条鱼不敢吃掉第k-2 条鱼,那么第k-2 条鱼就可以肆无忌惮地吃掉第k-3条鱼,以此类推,得到若鱼群数量为奇数,则第TbGx就可以肆无忌惮地吃食物,否则就不敢吃。于是问题转化成了:求Fibnacci数列前n项有多少项是奇数。

吐槽:最近找遇到好多好多规律题,,,神一般的脑洞。完完全全的智商压制?

代码如下:

 

 

 

 

 

 

 

 

 

 

 

#include<cstdio>
int main()
{
    long long a;
    while(~scanf("%lld",&a))
    printf("%lld\n",a/3*2+a%3);
}

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值