만드는 중입니다

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

현장 학습

면접 대비

시간 제한3초메모리 제한1024 MB

요약
학급 구간 1부터 N까지를 연속된 세 묶음으로 나눠 세 버스에 태우고, 교사가 버스에 타지 않는 분할점 i와 j를 출력합니다. 불가능하면 -1을 출력합니다.
난이도

보통10점 중 5점

유형
누적 합, 이분 탐색
정답자
아직 제출이 없습니다

문제

여러분과 반 친구들은 시내 박물관으로 신나는 현장 학습을 갑니다. 박물관은 한 시간 거리에 있어서, 같은 정원의 버스 세 대와 승합차 한 대로 왕복합니다. 버스에는 먼저 학생만 태웁니다. 학생을 모두 태운 뒤에야 교사가 버스의 남은 자리를 채웁니다. 자리가 부족해 버스에 들어가지 못한 교사는 승합차를 탑니다. 학생들은 버스에 교사가 한 명도 타지 않는 "교사 없는 버스 여행"을 바랍니다.

학생들은 크기가 서로 다른 nn개의 반으로 나뉩니다. 각 반에는 1부터 nn까지 번호가 붙습니다. 같은 반 학생은 모두 같은 버스에 타야 합니다. 버스는 반 번호가 작은 순서대로 학생을 태웁니다. 1번 버스는 11번부터 ii번 반까지, 2번 버스는 i+1i+1번부터 jj번 반까지, 3번 버스는 j+1j+1번부터 nn번 반까지 태웁니다. 각 버스에는 반이 최소 하나 배정되어야 합니다.

반별 인원수가 주어졌을 때, 같은 버스 세 대에 학생을 태워 교사 없는 버스 여행을 만들 수 있는지 판단하세요.

입력

첫째 줄에 반의 수 NN이 주어집니다(3≤N≤1,000,0003 \le N \le 1,000,000). 둘째 줄에는 NN개의 정수가 주어지며, ii번째 정수는 번호가 ii인 반의 학생 수입니다. 반의 학생 수는 11부터 10 00010\,000까지입니다.

출력

위의 방법으로 학생을 세 대의 버스에 태워 교사 없는 버스 여행을 만들 수 있다면, 두 정수 ii와 jj(1≤i<j<n1 \le i < j < n)를 출력합니다. ii는 1번 버스에 마지막으로 태우는 반의 번호이고, jj는 2번 버스에 마지막으로 태우는 반의 번호입니다. 3번 버스는 j+1j+1번부터 nn번 반까지 태웁니다.

만들 수 없다면 "-1"을 출력합니다.

예제4

  1. 예제 1

    입력
    3
    3 3 3
    
    예상 출력
    1 2
    
  2. 예제 2

    입력
    3
    9 10 11
    
    예상 출력
    -1
    
  3. 예제 3

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

    입력
    9
    1 2 3 1 2 3 1 2 10
    
    예상 출력
    -1