시장의 지옥

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

요약
1<=a_i<=i를 만족하는 수열에 +1 또는 -1 부호를 붙여 합이 0이 되게 할 수 있는지 판별하는 문제입니다.
난이도

보통10점 중 6점

유형
그리디, 수학
정답자
아직 제출이 없습니다

문제

금융 위기 동안 많은 금융 기관이 지급 불능 상태가 되어 청산되거나 더 큰 기관에 흡수되었고, 위기가 끝났을 때에는 단 두 곳의 은행만이 영업을 이어가고 있었다. 위기 내내 닫혀 있던 금융 시장이 이제 규제 당국에 의해 서서히 다시 열린다. 투기를 막고 거래를 점진적으로 늘리기 위해, 처음에는 단 하나의 금융 상품만 거래할 수 있으며 ii번째 분에는 거래량이 최대 ii계약으로 제한된다.

두 은행은 이 첫 거래 세션의 매 분마다 거래량을 미리 합의했다. ii번째 분(1≤i≤n1 \le i \le n)에는 정확히 aia_i계약이 거래되며(1≤ai≤i1 \le a_i \le i), 한 은행이 이를 사고 다른 은행이 판다. 외부 관찰자는 오직 거래량 aia_i만 볼 수 있다. 두 은행 모두 세션이 끝난 뒤 어떠한 포지션도 남기고 싶어 하지 않는다. ii번째 분에 첫 번째 은행이 매수하면 bi=1b_i = 1, 매도하면(즉 두 번째 은행이 매수하면) bi=−1b_i = -1이라 할 때, 두 은행이 모두 포지션 없이 마치기 위한 조건은

∑i=1naibi=0\sum_{i=1}^{n} a_i b_i = 0

이다. 합의된 거래량 a1,…,ana_1, \ldots, a_n이 주어질 때, 매 분마다 매수자와 매도자를 정하여 두 은행이 모두 포지션 없이 세션을 마칠 수 있는지 판정하여라.

입력

첫째 줄에 정수 nn이 주어진다 (1≤n≤100 0001 \le n \le 100\,000).

둘째 줄에 nn개의 정수 a1,…,ana_1, \ldots, a_n이 주어진다 (1≤ai≤i1 \le a_i \le i).

출력

∑i=1naibi=0\sum_{i=1}^{n} a_i b_i = 0이 되도록 매 분의 매수자와 매도자를 정할 수 있으면 Yes를, 그렇지 않으면 No를 출력한다.

예제3

  1. 예제 1

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

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

    입력
    1
    1
    
    예상 출력
    No