#include <bits/stdc++.h>
using namespace std;

#define rep(i,N) for(int i=0;i<(int)(N);i++)
#define REP(i,k,N) for(int i=k;i<(int)(N);i++)

#define vi vector<int>
#define pb push_back

void f(int b, int dep, int mt, int mb);


int cnt;
int p,q,a,n;

int main(){

    while(cin >> p >> q >> a >> n,p){
        cnt=0;
        f(1,1,0,1);
        cout << cnt << endl;
    }

    return 0;
}


void f(int b, int dep, int mt, int mb){

    if(p*mb==q*mt)cnt++;
    if(dep>n)return;

    REP(i,b,60000){
        if(mb*i>a)break;
        f(i,dep+1,i*mt+mb,mb*i);
    }
    return;
}
