FCPOSIPROD


Submit solution

Points: 10
Time limit: 1.0s
Memory limit: 512M

Problem type

Cho số nguyên \(n\) và dãy số nguyên \(a_1,a_2,…,a_n\). Có thể thực hiện phép biến đổi sau với một số lần tùy ý (có thể không thực hiện lần nào): Chọn vị trí \(i (i\) ∈ \([1,n])\), đảo dấu \(a_i\).

Yêu cầu: Tính số phép biến đổi ít nhất cần thực hiện để thu được dãy thỏa tính chất sau: Tích của 2 số bất kì trong dãy là số dương, hay với mỗi cặp \((i,j)\)thỏa \(1≤i<j≤n\),ta có∶ \(a_i×a_j>0\).

Input

  • Dòng đầu chứa số nguyên n(1≤n≤100);

  • Dòng thứ hai chứa \(n\) số nguyên \(a_1,a_2,…,a_n (-1000≤a_i≤1000)\).

Output

  • In ra một số nguyên duy nhất là số phép biến đổi ít nhất cần thực hiện. Nếu không biến đổi được in ra -1.

Sample Input

5
10 -20 -30 40 50

Sample Output

2

Sample Input

3
0 0 0

Sample Output

-1

Comments

There are no comments at the moment.