import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc =new Scanner(System.in);
		
		int n = sc.nextInt();
		int a[] = new int[n+1];
		int b[] = new int[n+1];
		
		for(int i=0;i<=n;i++) {
			a[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			b[i]=sc.nextInt();
		}
		b[n]=0;
		
		long ans =0;
		int res =0;
		
		for(int i=0;i<=n;i++) {
			ans+=Math.min(a[i], b[i]+res);
			res=Math.min(b[i], b[i]+res-a[i]);
			res=Math.max(res, 0);
		}
		
		System.out.println(ans);

}
	
	
	
}


 import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc =new Scanner(System.in);
		
		int n = sc.nextInt();
		int a[] = new int[n+1];
		int b[] = new int[n+1];
		
		for(int i=0;i<=n;i++) {
			a[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			b[i]=sc.nextInt();
		}
		b[n]=0;
		
		long ans =0;
		int res =0;
		
		for(int i=0;i<=n;i++) {
			ans+=Math.min(a[i], b[i]+res);
			res=Math.min(b[i], b[i]+res-a[i]);
			res=Math.max(res, 0);
		}
		
		System.out.println(ans);

}
	
	
	
} Main public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc =new Scanner(System.in);
		
		int n = sc.nextInt();
		int a[] = new int[n+1];
		int b[] = new int[n+1];
		
		for(int i=0;i<=n;i++) {
			a[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			b[i]=sc.nextInt();
		}
		b[n]=0;
		
		long ans =0;
		int res =0;
		
		for(int i=0;i<=n;i++) {
			ans+=Math.min(a[i], b[i]+res);
			res=Math.min(b[i], b[i]+res-a[i]);
			res=Math.max(res, 0);
		}
		
		System.out.println(ans);

} main {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc =new Scanner(System.in);
		
		int n = sc.nextInt();
		int a[] = new int[n+1];
		int b[] = new int[n+1];
		
		for(int i=0;i<=n;i++) {
			a[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			b[i]=sc.nextInt();
		}
		b[n]=0;
		
		long ans =0;
		int res =0;
		
		for(int i=0;i<=n;i++) {
			ans+=Math.min(a[i], b[i]+res);
			res=Math.min(b[i], b[i]+res-a[i]);
			res=Math.max(res, 0);
		}
		
		System.out.println(ans);

} Scanner sc =new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc int a[] = new int[n+1]; a new int[n+1] n+1 n 1 int b[] = new int[n+1]; b new int[n+1] n+1 n 1 for(int i=0;i<=n;i++) {
			a[i]=sc.nextInt();
		} int i=0; int i=0; i 0 i<=n i n i++ i++ i {
			a[i]=sc.nextInt();
		} {
			a[i]=sc.nextInt();
		} a[i]=sc.nextInt() a[i] a i sc.nextInt() sc.nextInt sc for(int i=0;i<n;i++) {
			b[i]=sc.nextInt();
		} int i=0; int i=0; i 0 i<n i n i++ i++ i {
			b[i]=sc.nextInt();
		} {
			b[i]=sc.nextInt();
		} b[i]=sc.nextInt() b[i] b i sc.nextInt() sc.nextInt sc b[n]=0 b[n] b n 0 long ans =0; ans 0 int res =0; res 0 for(int i=0;i<=n;i++) {
			ans+=Math.min(a[i], b[i]+res);
			res=Math.min(b[i], b[i]+res-a[i]);
			res=Math.max(res, 0);
		} int i=0; int i=0; i 0 i<=n i n i++ i++ i {
			ans+=Math.min(a[i], b[i]+res);
			res=Math.min(b[i], b[i]+res-a[i]);
			res=Math.max(res, 0);
		} {
			ans+=Math.min(a[i], b[i]+res);
			res=Math.min(b[i], b[i]+res-a[i]);
			res=Math.max(res, 0);
		} ans+=Math.min(a[i], b[i]+res) ans Math.min(a[i], b[i]+res) Math.min Math a[i] a i b[i]+res b[i] b i res res=Math.min(b[i], b[i]+res-a[i]) res Math.min(b[i], b[i]+res-a[i]) Math.min Math b[i] b i b[i]+res-a[i] b[i]+res b[i] b i res a[i] a i res=Math.max(res, 0) res Math.max(res, 0) Math.max Math res 0 System.out.println(ans) System.out.println System.out System System.out ans String[] args args public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc =new Scanner(System.in);
		
		int n = sc.nextInt();
		int a[] = new int[n+1];
		int b[] = new int[n+1];
		
		for(int i=0;i<=n;i++) {
			a[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			b[i]=sc.nextInt();
		}
		b[n]=0;
		
		long ans =0;
		int res =0;
		
		for(int i=0;i<=n;i++) {
			ans+=Math.min(a[i], b[i]+res);
			res=Math.min(b[i], b[i]+res-a[i]);
			res=Math.max(res, 0);
		}
		
		System.out.println(ans);

}
	
	
	
} public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc =new Scanner(System.in);
		
		int n = sc.nextInt();
		int a[] = new int[n+1];
		int b[] = new int[n+1];
		
		for(int i=0;i<=n;i++) {
			a[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			b[i]=sc.nextInt();
		}
		b[n]=0;
		
		long ans =0;
		int res =0;
		
		for(int i=0;i<=n;i++) {
			ans+=Math.min(a[i], b[i]+res);
			res=Math.min(b[i], b[i]+res-a[i]);
			res=Math.max(res, 0);
		}
		
		System.out.println(ans);

}
	
	
	
} Main
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ

		Scanner sc =new Scanner(System.in);
		
		int n = sc.nextInt();
		int a[] = new int[n+1];
		int b[] = new int[n+1];
		
		for(int i=0;i<=n;i++) {
			a[i]=sc.nextInt();
		}
		for(int i=0;i<n;i++) {
			b[i]=sc.nextInt();
		}
		b[n]=0;
		
		long ans =0;
		int res =0;
		
		for(int i=0;i<=n;i++) {
			ans+=Math.min(a[i], b[i]+res);
			res=Math.min(b[i], b[i]+res-a[i]);
			res=Math.max(res, 0);
		}
		
		System.out.println(ans);

}
	
	
	
}



