#include<bits/stdc++.h>
using namespace std;
#define MOD 1000000007
#define BIG 1000000010
#define repi(i,x,n) for(int i=x;i<n;i++)
#define rep(i,n) repi(i,0,n)
#define repn(i,n) for(int i=n;i>=0;i--)
typedef long long int ll;

int p,q,a,n;

int search(int P,int Q,int N,int T){
  if(P*q==p*Q) return 1;
  if(P*q>p*Q) return 0;
  if(N==n) return 0;
  int ret=0;
  for(int i=T;Q*i<=a;i++){
    ret+=search(P*i+Q,Q*i,N+1,i);
  }
  return ret;
}


int main(){
  while(1){
    cin>>p>>q>>a>>n;
    int ans;
    if(p==0 && q==0 && a==0 && n==0) break;
    ans=search(0,1,0,1);
    cout<<ans<<endl;
  }

  return 0;
}


