输入一行,包含一个整数n。
输出一个整数,表示返回的答案,由于字符串的数量巨大,可能会溢出,请输出对取模后的答案。
1
1
只有“1”满足
2
2
只有“10”和“11”满足
3
3
只有“101”,“110”,“111”满足
时间复杂度。额外空间复杂度
。
#include<iostream> using namespace std; int main() { int n; cin>>n; long long dp1=1;//末尾为1满足条件数量 long long dp2=0;//末尾为0满足条件数量 for(int i=1;i<n;i++) { long long temp=dp1; dp1=(dp1+dp2)%(1<<29); dp2=temp; } cout<<(dp1+dp2)%(1<<29)<<endl; }