import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner=new Scanner(System.in);
		int n=scanner.nextInt();
		int a[]=new int[n+5];
		for (int i = 1; i <= n; i++) {
			a[i]=scanner.nextInt();
		}
		int dp[]=new int[n+5];
		//0 1 0 2 1 0
		//0 
		dp[1]=a[1];//0
		dp[2]=a[2];//1
		for (int i = 3; i < n+1; i++) {
			dp[i]=Math.min(dp[i-1]+a[i], dp[i-2]+a[i]);
		}
		System.out.println(dp[n]);
		
		
		

	}

}

个人感觉这题和跳楼梯很像,都是跳1级跳2级的情况,那么我们想要求最小值,针对i号,肯定是dp[i]=Math.min(dp[i-1]+a[i], dp[i-2]+a[i]);初始化就直接给前两个赋值就行