#include<stdio.h>
#include<stdlib.h>
int p,q,a,n,ans=0;

void dfs(int b,int s,int k,int now)
{
	int i;
	if(b*p==s*q){ans++;return;}
	if(k==n)return;
	if(p*b<q*s)return;
	for(i=now;i*b<=a;i++)
		dfs(i*b,s*i+b,k+1,i);
}

int main()
{
	for(;scanf("%d%d%d%d",&p,&q,&a,&n),p+q+a+n;)
	{
		ans=0;
		dfs(1,0,0,0);
		printf("%d\n",ans);
	}
}