Submission #585133

#TimeUsernameProblemLanguageResultExecution timeMemory
585133krit3379Fibonacci representations (CEOI18_fib)C++17
5 / 100
133 ms1736 KiB
#include<bits/stdc++.h>
using namespace std;
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
#define N 25

int f[N];
map<int,int> mp;

int main(){
    int n,i,j,sum,x;
    scanf("%d",&n);
    assert(n<=15);
    f[0]=1;
    f[1]=2;
    for(i=2;i<=20;i++)f[i]=f[i-1]+f[i-2];
    for(i=0;i<(1<<20);i++){
        sum=0;
        for(j=0;j<20;j++)if(i&(1<<j))sum+=f[j];
        mp[sum]++;
    }
    sum=0;
    while(n--){
        scanf("%d",&x);
        sum+=f[x-1];
        printf("%d\n",mp[sum]);
    }
    return 0;
}

Compilation message (stderr)

fib.cpp: In function 'int main()':
fib.cpp:12:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   12 |     scanf("%d",&n);
      |     ~~~~~^~~~~~~~~
fib.cpp:24:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   24 |         scanf("%d",&x);
      |         ~~~~~^~~~~~~~~
#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...