现在有零钱 1、3、5、10,各无数张,现在需要进行将所有的钱去换250元,请问一共有多少方案

int a[]={1,3,5,10};
int tmp[4]={0};
int count=0;
const int money=250;
void getCount(int sum,int index)
{
if(sum>money)
{
return;
}
else if(sum==money)
{
count++;
}
else
{
for(int i=index;i<sizeof(a)/sizeof(int);i++)
{
tmp[i]++;
getCount(sum+a[i],i);
tmp[i]--;
}
}
}