만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

테이프 자르기

면접 대비

시간 제한1초메모리 제한128 MB

요약
수열을 비어 있지 않은 두 연속 구간으로 나누어 두 구간 합 차이의 절댓값이 가장 작아지는 값을 구합니다.
난이도

쉬움10점 중 3점

유형
누적 합, 배열
정답자
아직 제출이 없습니다

문제

어떤 사람이 집에서 긴 테이프를 발견하고 그 위에 정수들을 한 줄로 적었습니다. 이제 이 테이프를 한 곳에서 잘라 두 조각으로 나누려고 합니다. 이때 한 조각에 적힌 수들의 합과 다른 조각에 적힌 수들의 합의 차이가 00에 최대한 가깝도록 자르고 싶습니다. 단, 각 조각에는 적어도 하나의 수가 있어야 합니다. 두 합의 차이에 대한 절댓값의 최솟값을 구하세요.

입력

첫째 줄에 테이프에 적힌 수의 개수 nn (2≤n≤1062 \le n \le 10^6)이 주어집니다. 둘째 줄에는 테이프에 적힌 nn개의 정수 aia_i (−103≤ai≤103-10^3 \le a_i \le 10^3)가 순서대로 주어집니다.

출력

두 조각의 합의 차이에 대한 절댓값의 최솟값을 한 줄에 출력합니다.

힌트

예를 들어 수열이 1,2,3,4,5,61, 2, 3, 4, 5, 6일 때 네 번째 수 뒤에서 자르면 1,2,3,41, 2, 3, 4와 5,65, 6으로 나뉘고, 두 합의 차이의 절댓값은 ∣(1+2+3+4)−(5+6)∣=1|(1 + 2 + 3 + 4) - (5 + 6)| = 1이 됩니다.

예제2

  1. 예제 1

    입력
    6
    1 2 3 4 5 6
    
    예상 출력
    1
    
  2. 예제 2

    입력
    2
    5 5
    
    예상 출력
    0