import java.util.*;
public class Main {
  public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    // 重りの数
    int n = sc.nextInt();
    // 重りたち
    int weights[] = new int[n];
    for(int idx=0; idx<n; idx++){
      weights[idx] = sc.nextInt();
    }
    
    // 前後に分けて足していく
    int s1 = 0, s2 = 0;
    int num = 0;
    int right = 0;
    int left = 0;
    while(true){
      /*
      // 残り2個
      if(n - num == 2){
        s1 + weights[left] + 
      }
      // 残り1個
      if(n - num == 1){
        if(s1 > s2){
          s1 += weights[left];
        }
        break;
      }
      */
      
      // 両側から取る
      if(s1 <= s2){
        s1 += weights[left];
        left ++;
        num ++;
      }
      if(num >= n){
        break;
      }
      if(s2 <= s1){
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      }
      if(num >= n){
        break;
      }
    }
    
    
    // 出力
    if(s1 > s2){
      System.out.println(s1 - s2);   
    }else{
      System.out.println(s2 - s1);   
    }
  }
} import java.util.*; util.* java public class Main {
  public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    // 重りの数
    int n = sc.nextInt();
    // 重りたち
    int weights[] = new int[n];
    for(int idx=0; idx<n; idx++){
      weights[idx] = sc.nextInt();
    }
    
    // 前後に分けて足していく
    int s1 = 0, s2 = 0;
    int num = 0;
    int right = 0;
    int left = 0;
    while(true){
      /*
      // 残り2個
      if(n - num == 2){
        s1 + weights[left] + 
      }
      // 残り1個
      if(n - num == 1){
        if(s1 > s2){
          s1 += weights[left];
        }
        break;
      }
      */
      
      // 両側から取る
      if(s1 <= s2){
        s1 += weights[left];
        left ++;
        num ++;
      }
      if(num >= n){
        break;
      }
      if(s2 <= s1){
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      }
      if(num >= n){
        break;
      }
    }
    
    
    // 出力
    if(s1 > s2){
      System.out.println(s1 - s2);   
    }else{
      System.out.println(s2 - s1);   
    }
  }
} Main public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    // 重りの数
    int n = sc.nextInt();
    // 重りたち
    int weights[] = new int[n];
    for(int idx=0; idx<n; idx++){
      weights[idx] = sc.nextInt();
    }
    
    // 前後に分けて足していく
    int s1 = 0, s2 = 0;
    int num = 0;
    int right = 0;
    int left = 0;
    while(true){
      /*
      // 残り2個
      if(n - num == 2){
        s1 + weights[left] + 
      }
      // 残り1個
      if(n - num == 1){
        if(s1 > s2){
          s1 += weights[left];
        }
        break;
      }
      */
      
      // 両側から取る
      if(s1 <= s2){
        s1 += weights[left];
        left ++;
        num ++;
      }
      if(num >= n){
        break;
      }
      if(s2 <= s1){
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      }
      if(num >= n){
        break;
      }
    }
    
    
    // 出力
    if(s1 > s2){
      System.out.println(s1 - s2);   
    }else{
      System.out.println(s2 - s1);   
    }
  } main {
    Scanner sc = new Scanner(System.in);
    // 重りの数
    int n = sc.nextInt();
    // 重りたち
    int weights[] = new int[n];
    for(int idx=0; idx<n; idx++){
      weights[idx] = sc.nextInt();
    }
    
    // 前後に分けて足していく
    int s1 = 0, s2 = 0;
    int num = 0;
    int right = 0;
    int left = 0;
    while(true){
      /*
      // 残り2個
      if(n - num == 2){
        s1 + weights[left] + 
      }
      // 残り1個
      if(n - num == 1){
        if(s1 > s2){
          s1 += weights[left];
        }
        break;
      }
      */
      
      // 両側から取る
      if(s1 <= s2){
        s1 += weights[left];
        left ++;
        num ++;
      }
      if(num >= n){
        break;
      }
      if(s2 <= s1){
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      }
      if(num >= n){
        break;
      }
    }
    
    
    // 出力
    if(s1 > s2){
      System.out.println(s1 - s2);   
    }else{
      System.out.println(s2 - s1);   
    }
  } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = sc.nextInt(); n sc.nextInt() sc.nextInt sc int weights[] = new int[n]; weights new int[n] n for(int idx=0; idx<n; idx++){
      weights[idx] = sc.nextInt();
    } int idx=0; int idx=0; idx 0 idx<n idx n idx++ idx++ idx {
      weights[idx] = sc.nextInt();
    } {
      weights[idx] = sc.nextInt();
    } weights[idx] = sc.nextInt() weights[idx] weights idx sc.nextInt() sc.nextInt sc int s1 = 0 s1 0 s2 = 0; s2 0 int num = 0; num 0 int right = 0; right 0 int left = 0; left 0 while(true){
      /*
      // 残り2個
      if(n - num == 2){
        s1 + weights[left] + 
      }
      // 残り1個
      if(n - num == 1){
        if(s1 > s2){
          s1 += weights[left];
        }
        break;
      }
      */
      
      // 両側から取る
      if(s1 <= s2){
        s1 += weights[left];
        left ++;
        num ++;
      }
      if(num >= n){
        break;
      }
      if(s2 <= s1){
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      }
      if(num >= n){
        break;
      }
    } true {
      /*
      // 残り2個
      if(n - num == 2){
        s1 + weights[left] + 
      }
      // 残り1個
      if(n - num == 1){
        if(s1 > s2){
          s1 += weights[left];
        }
        break;
      }
      */
      
      // 両側から取る
      if(s1 <= s2){
        s1 += weights[left];
        left ++;
        num ++;
      }
      if(num >= n){
        break;
      }
      if(s2 <= s1){
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      }
      if(num >= n){
        break;
      }
    } if(s1 <= s2){
        s1 += weights[left];
        left ++;
        num ++;
      } s1 <= s2 s1 s2 {
        s1 += weights[left];
        left ++;
        num ++;
      } s1 += weights[left] s1 weights[left] weights left left ++ left num ++ num if(num >= n){
        break;
      } num >= n num n {
        break;
      } break; if(s2 <= s1){
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      } s2 <= s1 s2 s1 {
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      } s2 += weights[n - 1 - right] s2 weights[n - 1 - right] weights n - 1 - right n - 1 - right n 1 right right ++ right num ++ num if(num >= n){
        break;
      } num >= n num n {
        break;
      } break; if(s1 > s2){
      System.out.println(s1 - s2);   
    }else{
      System.out.println(s2 - s1);   
    } s1 > s2 s1 s2 {
      System.out.println(s1 - s2);   
    } System.out.println(s1 - s2) System.out.println System.out System System.out s1 - s2 s1 s2 {
      System.out.println(s2 - s1);   
    } System.out.println(s2 - s1) System.out.println System.out System System.out s2 - s1 s2 s1 String[] args args public class Main {
  public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    // 重りの数
    int n = sc.nextInt();
    // 重りたち
    int weights[] = new int[n];
    for(int idx=0; idx<n; idx++){
      weights[idx] = sc.nextInt();
    }
    
    // 前後に分けて足していく
    int s1 = 0, s2 = 0;
    int num = 0;
    int right = 0;
    int left = 0;
    while(true){
      /*
      // 残り2個
      if(n - num == 2){
        s1 + weights[left] + 
      }
      // 残り1個
      if(n - num == 1){
        if(s1 > s2){
          s1 += weights[left];
        }
        break;
      }
      */
      
      // 両側から取る
      if(s1 <= s2){
        s1 += weights[left];
        left ++;
        num ++;
      }
      if(num >= n){
        break;
      }
      if(s2 <= s1){
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      }
      if(num >= n){
        break;
      }
    }
    
    
    // 出力
    if(s1 > s2){
      System.out.println(s1 - s2);   
    }else{
      System.out.println(s2 - s1);   
    }
  }
} public class Main {
  public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    // 重りの数
    int n = sc.nextInt();
    // 重りたち
    int weights[] = new int[n];
    for(int idx=0; idx<n; idx++){
      weights[idx] = sc.nextInt();
    }
    
    // 前後に分けて足していく
    int s1 = 0, s2 = 0;
    int num = 0;
    int right = 0;
    int left = 0;
    while(true){
      /*
      // 残り2個
      if(n - num == 2){
        s1 + weights[left] + 
      }
      // 残り1個
      if(n - num == 1){
        if(s1 > s2){
          s1 += weights[left];
        }
        break;
      }
      */
      
      // 両側から取る
      if(s1 <= s2){
        s1 += weights[left];
        left ++;
        num ++;
      }
      if(num >= n){
        break;
      }
      if(s2 <= s1){
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      }
      if(num >= n){
        break;
      }
    }
    
    
    // 出力
    if(s1 > s2){
      System.out.println(s1 - s2);   
    }else{
      System.out.println(s2 - s1);   
    }
  }
} Main
import java.util.*;
public class Main {
  public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    // 重りの数
    int n = sc.nextInt();
    // 重りたち
    int weights[] = new int[n];
    for(int idx=0; idx<n; idx++){
      weights[idx] = sc.nextInt();
    }
    
    // 前後に分けて足していく
    int s1 = 0, s2 = 0;
    int num = 0;
    int right = 0;
    int left = 0;
    while(true){
      /*
      // 残り2個
      if(n - num == 2){
        s1 + weights[left] + 
      }
      // 残り1個
      if(n - num == 1){
        if(s1 > s2){
          s1 += weights[left];
        }
        break;
      }
      */
      
      // 両側から取る
      if(s1 <= s2){
        s1 += weights[left];
        left ++;
        num ++;
      }
      if(num >= n){
        break;
      }
      if(s2 <= s1){
        s2 += weights[n - 1 - right];
        right ++;
        num ++;
      }
      if(num >= n){
        break;
      }
    }
    
    
    // 出力
    if(s1 > s2){
      System.out.println(s1 - s2);   
    }else{
      System.out.println(s2 - s1);   
    }
  }
}
