#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll a,n,m,x,k;
struct ff{
ll sa;
ll sk;
};
ff up[25],down[25];
ll p[25];
int main(){
cin>>a>>n>>m>>x;
up[1].sa=1;
up[2].sk=1;
down[2].sk=1;
for(int i=3;i<n;i++){
up[i].sa=up[i-1].sa+up[i-2].sa;
down[i].sa=up[i-1].sa;
up[i].sk=up[i-1].sk+up[i-2].sk;
down[i].sk=up[i-1].sk;
}
int f1=up[n-1].sa*a-down[n-1].sa*a;
int f2=up[n-1].sk-down[n-1].sk;
k=(m-f1)/f2;
for(int i=1;i<=n;i++){
p[i]+=(up[i].sa-down[i].sa)*a;
p[i]+=(up[i].sk-down[i].sk)*k;
}
cout<<p[x];
}
史山代码rt,1Re,3Wa,1Ac,感觉思路没问题