#include <iostream> #include<vector> using namespace std; int main() { long long n; while (cin >> n) { // 注意 while 处理多个 case vector<long long> dp(n+1,0); dp[0]=dp[1]=1; for(int i=2;i<=n;i++){ if(i%2==1) dp[i]=dp[i-1]; else dp[i]=(dp[i-1]+dp[i/2])%1000000000; } cout<<dp[n]<<endl; } } // 64 位输出请用 printf("%lld")