아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Sum=Product

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

요약
원소가 1 이상 300000 이하인 양의 정수 수열에서 합과 곱이 같은 부분배열의 개수를 센다.
난이도

보통10점 중 7점

유형
투 포인터, 수학, 구현
정답자
아직 제출이 없습니다

문제

길이가 NN인 수열 A_1,⋯ ,A_NA\_1, \cdots, A\_N이 주어집니다. 아래 조건을 모두 만족시키는 (i,j)(i, j) 정수쌍의 개수를 구하세요.

  • 1≤i≤j≤N1 \le i \le j \le N
  • A_i+A_i+1+⋯+A_j=A_i×A_i+1×⋯×A_jA\_i + A\_{i+1} + \cdots + A\_j = A\_i \times A\_{i+1} \times \cdots \times A\_j

입력

첫 줄에 수열의 길이 NN이 주어집니다. (1≤N≤300,000)(1 \le N \le 300\\,000)

둘째 줄에 NN개의 정수 A_1,⋯ ,A_NA\_1, \cdots, A\_N 이 공백으로 구분되어 주어집니다. (1≤A_i≤300,000)(1 \le A\_i \le 300\\,000)

출력

문제의 조건을 만족시키는 (i,j)(i, j) 정수쌍의 개수를 출력하세요.

예제1

  1. 예제 1

    입력
    6
    3 1 2 4 1 5
    
    예상 출력
    8