import java.util.*;

public class  Main {
  public static void main(String args[]) {
		    Scanner sc = new Scanner(System.in);

		    int N = sc.nextInt();
		    long A[] = new long [N+1];
		    long B[] = new long [N];
		    long sum = 0;
		    
		    for(int i = 0; i<=N; i++) {
		    	A[i] = sc.nextLong();
		    }
		    
		    for(int i = 0; i<N; i++) {
		    	B[i] = sc.nextLong();
		    }
		    
		    for(int i=N-1;i>=0;i--) {
				sum+=Math.min(A[i+1], B[i]);
				B[i]=Math.max(0, B[i]-A[i+1]);
				sum+=Math.min(A[i], B[i]);
				A[i]=Math.max(0, A[i]-B[i]);
			}
		    
		    System.out.println(sum);
		    
	  }
} import java.util.*; util.* java public class  Main {
  public static void main(String args[]) {
		    Scanner sc = new Scanner(System.in);

		    int N = sc.nextInt();
		    long A[] = new long [N+1];
		    long B[] = new long [N];
		    long sum = 0;
		    
		    for(int i = 0; i<=N; i++) {
		    	A[i] = sc.nextLong();
		    }
		    
		    for(int i = 0; i<N; i++) {
		    	B[i] = sc.nextLong();
		    }
		    
		    for(int i=N-1;i>=0;i--) {
				sum+=Math.min(A[i+1], B[i]);
				B[i]=Math.max(0, B[i]-A[i+1]);
				sum+=Math.min(A[i], B[i]);
				A[i]=Math.max(0, A[i]-B[i]);
			}
		    
		    System.out.println(sum);
		    
	  }
} Main public static void main(String args[]) {
		    Scanner sc = new Scanner(System.in);

		    int N = sc.nextInt();
		    long A[] = new long [N+1];
		    long B[] = new long [N];
		    long sum = 0;
		    
		    for(int i = 0; i<=N; i++) {
		    	A[i] = sc.nextLong();
		    }
		    
		    for(int i = 0; i<N; i++) {
		    	B[i] = sc.nextLong();
		    }
		    
		    for(int i=N-1;i>=0;i--) {
				sum+=Math.min(A[i+1], B[i]);
				B[i]=Math.max(0, B[i]-A[i+1]);
				sum+=Math.min(A[i], B[i]);
				A[i]=Math.max(0, A[i]-B[i]);
			}
		    
		    System.out.println(sum);
		    
	  } main {
		    Scanner sc = new Scanner(System.in);

		    int N = sc.nextInt();
		    long A[] = new long [N+1];
		    long B[] = new long [N];
		    long sum = 0;
		    
		    for(int i = 0; i<=N; i++) {
		    	A[i] = sc.nextLong();
		    }
		    
		    for(int i = 0; i<N; i++) {
		    	B[i] = sc.nextLong();
		    }
		    
		    for(int i=N-1;i>=0;i--) {
				sum+=Math.min(A[i+1], B[i]);
				B[i]=Math.max(0, B[i]-A[i+1]);
				sum+=Math.min(A[i], B[i]);
				A[i]=Math.max(0, A[i]-B[i]);
			}
		    
		    System.out.println(sum);
		    
	  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc long A[] = new long [N+1]; A new long [N+1] N+1 N 1 long B[] = new long [N]; B new long [N] N long sum = 0; sum 0 for(int i = 0; i<=N; i++) {
		    	A[i] = sc.nextLong();
		    } int i = 0; int i = 0; i 0 i<=N i N i++ i++ i {
		    	A[i] = sc.nextLong();
		    } {
		    	A[i] = sc.nextLong();
		    } A[i] = sc.nextLong() A[i] A i sc.nextLong() sc.nextLong sc for(int i = 0; i<N; i++) {
		    	B[i] = sc.nextLong();
		    } int i = 0; int i = 0; i 0 i<N i N i++ i++ i {
		    	B[i] = sc.nextLong();
		    } {
		    	B[i] = sc.nextLong();
		    } B[i] = sc.nextLong() B[i] B i sc.nextLong() sc.nextLong sc for(int i=N-1;i>=0;i--) {
				sum+=Math.min(A[i+1], B[i]);
				B[i]=Math.max(0, B[i]-A[i+1]);
				sum+=Math.min(A[i], B[i]);
				A[i]=Math.max(0, A[i]-B[i]);
			} int i=N-1; int i=N-1; i N-1 N 1 i>=0 i 0 i-- i-- i {
				sum+=Math.min(A[i+1], B[i]);
				B[i]=Math.max(0, B[i]-A[i+1]);
				sum+=Math.min(A[i], B[i]);
				A[i]=Math.max(0, A[i]-B[i]);
			} {
				sum+=Math.min(A[i+1], B[i]);
				B[i]=Math.max(0, B[i]-A[i+1]);
				sum+=Math.min(A[i], B[i]);
				A[i]=Math.max(0, A[i]-B[i]);
			} sum+=Math.min(A[i+1], B[i]) sum Math.min(A[i+1], B[i]) Math.min Math A[i+1] A i+1 i 1 B[i] B i B[i]=Math.max(0, B[i]-A[i+1]) B[i] B i Math.max(0, B[i]-A[i+1]) Math.max Math 0 B[i]-A[i+1] B[i] B i A[i+1] A i+1 i 1 sum+=Math.min(A[i], B[i]) sum Math.min(A[i], B[i]) Math.min Math A[i] A i B[i] B i A[i]=Math.max(0, A[i]-B[i]) A[i] A i Math.max(0, A[i]-B[i]) Math.max Math 0 A[i]-B[i] A[i] A i B[i] B i System.out.println(sum) System.out.println System.out System System.out sum String args[] args public class  Main {
  public static void main(String args[]) {
		    Scanner sc = new Scanner(System.in);

		    int N = sc.nextInt();
		    long A[] = new long [N+1];
		    long B[] = new long [N];
		    long sum = 0;
		    
		    for(int i = 0; i<=N; i++) {
		    	A[i] = sc.nextLong();
		    }
		    
		    for(int i = 0; i<N; i++) {
		    	B[i] = sc.nextLong();
		    }
		    
		    for(int i=N-1;i>=0;i--) {
				sum+=Math.min(A[i+1], B[i]);
				B[i]=Math.max(0, B[i]-A[i+1]);
				sum+=Math.min(A[i], B[i]);
				A[i]=Math.max(0, A[i]-B[i]);
			}
		    
		    System.out.println(sum);
		    
	  }
} public class  Main {
  public static void main(String args[]) {
		    Scanner sc = new Scanner(System.in);

		    int N = sc.nextInt();
		    long A[] = new long [N+1];
		    long B[] = new long [N];
		    long sum = 0;
		    
		    for(int i = 0; i<=N; i++) {
		    	A[i] = sc.nextLong();
		    }
		    
		    for(int i = 0; i<N; i++) {
		    	B[i] = sc.nextLong();
		    }
		    
		    for(int i=N-1;i>=0;i--) {
				sum+=Math.min(A[i+1], B[i]);
				B[i]=Math.max(0, B[i]-A[i+1]);
				sum+=Math.min(A[i], B[i]);
				A[i]=Math.max(0, A[i]-B[i]);
			}
		    
		    System.out.println(sum);
		    
	  }
} Main
import java.util.*;

public class  Main {
  public static void main(String args[]) {
		    Scanner sc = new Scanner(System.in);

		    int N = sc.nextInt();
		    long A[] = new long [N+1];
		    long B[] = new long [N];
		    long sum = 0;
		    
		    for(int i = 0; i<=N; i++) {
		    	A[i] = sc.nextLong();
		    }
		    
		    for(int i = 0; i<N; i++) {
		    	B[i] = sc.nextLong();
		    }
		    
		    for(int i=N-1;i>=0;i--) {
				sum+=Math.min(A[i+1], B[i]);
				B[i]=Math.max(0, B[i]-A[i+1]);
				sum+=Math.min(A[i], B[i]);
				A[i]=Math.max(0, A[i]-B[i]);
			}
		    
		    System.out.println(sum);
		    
	  }
}
