Mistrzostwa Polski Szkół Średnich w Programowaniu Zespołowym 2024

2020-2022 2023 Regulations Schedule RODO info Ranking

Problem description


Samochody
(samochody)
Memory limit: 32 MB
Time limit: 3.00 s

Przemek obserwuje ruch samochodów na drodze. Droga jest dwukierunkowa i łączy wschodnią część miasta z zachodnią. Ponieważ Przemek stoi na wzgórzu, to widzi dokładane położenie wszystkich samochodów. Zastanawia się teraz, ile par samochodów minie się między sobą. Dwa samochody miną się, jeśli jadą w przeciwnych kierunkach, gdy pierwszy z nich (patrząc od lewej) jedzie na wschód, a drugi na zachód. Zakładamy, że samochody nie zawracają, nie wyprzedzają oraz wszystkie jadą prosto przed siebie.

Napisz program, który wczyta ciąg samochodów, wyznaczy liczbę par samochodów, które się miną i wypisze wynik na standardowe wyjście.

Wejście

W pierwszym wierszu wejścia znajduje się jedna liczba całkowita N, oznaczająca liczbę wszystkich samochodów, które widzi Przemek. W drugim wierszu wejścia znajduje się liczb całkowitych Ai, oznaczających kolejne samochody, podawane w kolejności od najbardziej położonych na zachód (samochód i jest położony bardziej na zachód niż samochód i + 1). Liczba Ai, oznacza kierunek jazdy i-tego samochodu: 0 – samochód jedzie na wschód, 1 – samochód jedzie na zachód.

Wyjście

Pierwszy i jedyny wiersz wyjścia powinien zawierać jedną liczbę całkowitą, równą liczbie par samochodów, które będą się mijały.

Ograniczenia

1 ≤ N ≤ 1 000 000.

W testach wartych łącznie 40% maksymalnej punktacji: N ≤ 2 000.

Przykład

Input Output Explanation
5
0 1 0 1 1
5

Pary samochodów, które się miną to: (1,2), (1,4), (1,5), (3,4), (3,5).