题目链接:数的计算
初始条件:f(1) = 1
递推关系式:f(n) = f(n/2) + f(n/2-1) + f(n/2-2) + … +f(1) + 1
java代码:
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int n;
Scanner in = new Scanner(System.in);
n = in.nextInt();
long arr[] = new long[n+1];
Arrays.fill(arr, 0);
arr[1] = 1;
for(int i=2;i<=n;++i) {
for(int j=i/2;j>=1;j--)
arr[i] += arr[j];
arr[i]++;
}
System.out.println(arr[n]);
}
}