10459 | 2024-04-02 23:12:55 | 111 | Fibonacci Sequences | cpp17 | Hibás válasz 75/100 | 178ms | 19856 KiB |
#include<bits/stdc++.h>
using namespace std;
#define int long long
vector<int>f,v,F;
map<int,int>m;
void solve(int x,int i,int c,int d){
if(x>1000000000){
return;
}
if(d){
int ans=1;
v.push_back(c);
int dd=d;
for(int j:v){
ans*=F[dd]/F[j]/F[dd-j];
dd-=j;
}
m[x]+=ans;
v.pop_back();
}
for(int j=i;j<f.size();j++){
if(j==i){
solve(x*f[j],j,c+1,d+1);
}
else{
v.push_back(c);
solve(x*f[j],j,1,d+1);
v.pop_back();
}
}
}
signed main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
f.push_back(1);
f.push_back(2);
F.push_back(1);
for(int i=0;i<42;i++){
f.push_back(*--f.end()+*----f.end());
F.push_back(F.back()*(i+1));
}
solve(1,1,0,0);
int T;
cin>>T;
while(T--){
int M;
cin>>M;
if(M==1){
cout<<1<<'\n';
continue;
}
cout<<m[M]<<'\n';
}
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 111ms | 11604 KiB | ||||
2 | Elfogadva | 111ms | 11836 KiB | ||||
subtask2 | 25/25 | ||||||
3 | Elfogadva | 111ms | 12012 KiB | ||||
4 | Elfogadva | 111ms | 12100 KiB | ||||
5 | Elfogadva | 111ms | 12476 KiB | ||||
6 | Elfogadva | 111ms | 12364 KiB | ||||
subtask3 | 25/25 | ||||||
7 | Elfogadva | 111ms | 12280 KiB | ||||
8 | Elfogadva | 111ms | 12500 KiB | ||||
9 | Elfogadva | 111ms | 12684 KiB | ||||
10 | Elfogadva | 111ms | 12772 KiB | ||||
subtask4 | 25/25 | ||||||
11 | Elfogadva | 170ms | 19240 KiB | ||||
12 | Elfogadva | 166ms | 19176 KiB | ||||
subtask5 | 0/25 | ||||||
13 | Hibás válasz | 175ms | 19532 KiB | ||||
14 | Hibás válasz | 178ms | 19856 KiB |