最近被找规律题坑得很惨,很多能找规律的普通的写的话就很麻烦,这次手算,写了10个数就发现规律了!我算是明白了,这种能手算打表的,一定要先算几个看看有没有规律,不然很亏!
#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;
int a[1000005];
int main() {
int t,n;
cin>>t;
a[1] = 1;
a[2] = 2;
while(t--)
{
cin>>n;
for(int i = 3;i <= n;i++)
{
if(i % 2 != 0)
{
a[i] = a[i - 1];
}
else{
a[i] = a[i / 2] + a[i - 2];
}
a[i] %= 1000000000;
}
cout<<a[n]<<endl;
}
return 0;
}