FCPOSIPROD
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