题目连接:https://www.luogu.com.cn/problem/AT2272
——————————————————————————————————————————————————————————
这道题只看阳历没啥效果,
显然的,暴力百分百会炸。
所以只能考虑有啥思维做法
考虑一下递推:
先列举前几个试试:
1 2 4 5 .....
所以列出
初始条件
d[0]=1;//(0,0)第一组
d[1]=2; //(0,0)第一组 ,(1,1)第二组;
开始找规律找出递推式
d[x]=d[x/2]+d[(x-1)/2]+d[(x-2)/2]
————————————————————————————————————————————————————
具体证明大家看一个网址:
http://oeis.org/search?q=1%2C2%2C4%2C5%2C8%2C10%2C13%2C14%2C18&sort=&language=english&go=Search
————————————————————————————————————————————————————
代码非常简单,不给大家放了,
一个细节:不能开数组,考虑用map替代
OK,解决了