算法很简单,大数自己想. :-)
public static long num(int w) {
long sum = 1; // itself
if(w >= 5) {
for(int i = 0; i < (int)((w-5)/3)+1; i++)
sum += 3 + 3 * num(w - 5 - i*3);
}
return sum;
}
public static long num(int w) {
long sum = 1; // itself
if(w >= 5) {
for(int i = 0; i < (int)((w-5)/3)+1; i++)
sum += 3 + 3 * num(w - 5 - i*3);
}
return sum;
}
long sum = 1; // itself
if(w >= 5) {
for(int i = 0; i < (int)((w-5)/3)+1; i++)
sum += 3 + 3 * num(w - 5 - i*3);
}
return sum;
}这个算法行了
可是还有一个小问题, i < (int)((w-5)/3)+1是什么? 3 + 3 * num(w - 5 - i*3)算的是什么的数字?
我数学不是很好,让你们见笑了。这几天被它绕的头都晕了。
3 + 3 * num(w - 5 - i*3)==3公+3母生的老鼠