Submission #950338

#TimeUsernameProblemLanguageResultExecution timeMemory
950338berrFibonacci representations (CEOI18_fib)C++17
15 / 100
4033 ms3744 KiB
#include <bits/stdc++.h> using namespace std; #define int long long const int mod =1e9+7; int mul(int x, int y){ return (x*y)%mod; } int sum(int x, int y){ return (x+y) % mod; } int poww(int x, int y){ if(y==0) return 1; int tmp =poww(x, y/2); tmp=mul(tmp, tmp); if(y%2) return mul(tmp, x); return tmp; } signed main(){ ios_base::sync_with_stdio(false); cin.tie(0); int n; cin >> n; vector<int> a(n); int cnt=1; for(auto &i: a) cin >> i; set<int> st; for(int i=0; i<n; i++){ int ans=1; st.insert(a[i]); vector<array<int, 2>> dp(st.size()); dp[0]={1, (*st.begin()-1)/2}; if(*st.begin()<2){ dp[0][1]=0; } int cnt=1; int last=*st.begin(); for(auto h: st){ if(h==*st.begin()) continue; dp[cnt][0]=sum(dp[cnt-1][0], dp[cnt-1][1]); dp[cnt][1]=sum(mul(dp[cnt-1][0], (h-last-1)/2), mul(dp[cnt-1][1], (h-last)/2)); cnt++; last=h; } cout<<sum(dp[i][0], dp[i][1])<<"\n"; } }

Compilation message (stderr)

fib.cpp: In function 'int main()':
fib.cpp:37:13: warning: unused variable 'ans' [-Wunused-variable]
   37 |         int ans=1;
      |             ^~~
fib.cpp:32:9: warning: unused variable 'cnt' [-Wunused-variable]
   32 |     int cnt=1;
      |         ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...