¿La página no carga? Prueba haciendo clic aquí.
Placeholder

#5342

프리소비 (Cow Frisbee) 2s 256MB

Problemas

N마리(N ≤ 3 × 10^5)의 소들의 키는 1, 2, …, N이다.

 

어느 날, 소들이 프리소비(소들이 가지고 노는 프리스비라서 프리소비라고 부른다)를 가지고 놀며 어떤 순서로 줄을 서 있다. 

소들은 h_1, …​, h_N 높이로 줄을 서있다(따라서 h1 … N의 순열이다).

ij 위치에 있는 두 마리의 소는 그 사이의 모든 소의 높이가 min(h_i, h_j)보다 낮은 경우에만 프리소비​를 앞뒤로 성공적으로 던질 수 있다.

프리소비를 앞뒤로 성공적으로 던질 수 있는 한 쌍의 소가 있는 위치 i<j의 모든 쌍 사이의 거리의 합을 계산하시오. 

위치 ij 사이의 거리는 j−i+1이다.​​


Entrada

첫 번째 줄에 소의 수 N이 주어진다.

두 번째 줄에 소들의 키 h_1, …, h_N가 주어진다.​


Salida

프리소비​를 앞뒤로 던질 수 있는 소가 있는 모든 위치 쌍의 거리의 합을 출력하시오.

이 문제와 관련된 큰 크기의 정수는 64비트 정수 데이터 유형(예: C/C++의 "long long")을 사용해야 할 수 있다.​


Ejemplo

7

4 3 1 2 5 6 7
24



Fuente

USACO 2022 January Silver

Debes iniciar sesión para escribir código.