# include <iostream.h>
# include "stdio.h"
# include "string.h"//memset 库函数
//半数单集合算法
long mm[1000];
long ff(int num)
{
long pc = 1;
if( mm[num]
> 0 ) return
mm[num];
else
{
for(int i = 1; i <= num/2; i++)
{
pc += ff(i);
if((i>10)&&(2*(i/10)<=i%10))
pc-=mm[i/10];
}
mm[num] = pc;
return pc;
}
}
int main()
{
int
num;
printf("\n------半数单集合算法-------\n");
while(cin>>num)
{
memset(mm,sizeof(mm),0);
mm[1] =
1;
cout<<ff(num)<<endl;
}
return
0;
}