import java.util.Scanner; public class Main{ public static void main(String []args){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); System.out.printf("%d",array(n)); } public static int array(int n){ if(n == 1){ return 0; }else if(n == 2 || n == 3){ return 1; }else{ int a1 = 0; int a2 = 1; int a3 = 1; int a4 = 0; for(int i = 1; i <= n - 3; i++){ a4 = a1 + 2 * a2 + a3; a1 = a2; a2 = a3; a3 = a4; } return a4; } } }这个跟斐波那契数列差不多,都是与前几项有关联,根据规律替求出后几项的值在换前几项的值就可以求解。