CF1525D Armchairs
Description
There are $ n $ armchairs, numbered from $ 1 $ to $ n $ from left to right. Some armchairs are occupied by people (at most one person per armchair), others are not. The number of occupied armchairs is not greater than $ \frac{n}{2} $ .
For some reason, you would like to tell people to move from their armchairs to some other ones. If the $ i $ -th armchair is occupied by someone and the $ j $ -th armchair is not, you can tell the person sitting in the $ i $ -th armchair to move to the $ j $ -th armchair. The time it takes a person to move from the $ i $ -th armchair to the $ j $ -th one is $ |i - j| $ minutes. You may perform this operation any number of times, but these operations must be done sequentially, i. e. you cannot tell a person to move until the person you asked to move in the last operation has finished moving to their destination armchair.
You want to achieve the following situation: every seat that was initially occupied must be free. What is the minimum time you need to do it?
Input Format
The first line contains one integer $ n $ ( $ 2 \le n \le 5000 $ ) — the number of armchairs.
The second line contains $ n $ integers $ a_1, a_2, \dots, a_n $ ( $ 0 \le a_i \le 1 $ ). $ a_i = 1 $ means that the $ i $ -th armchair is initially occupied, $ a_i = 0 $ means that it is initially free. The number of occupied armchairs is at most $ \frac{n}{2} $ .
Output Format
Print one integer — the minimum number of minutes you have to spend to achieve the following situation: every seat that was initially occupied must be free.
Explanation/Hint
In the first test, you can perform the following sequence:
1. ask a person to move from armchair $ 1 $ to armchair $ 2 $ , it takes $ 1 $ minute;
2. ask a person to move from armchair $ 7 $ to armchair $ 6 $ , it takes $ 1 $ minute;
3. ask a person to move from armchair $ 4 $ to armchair $ 5 $ , it takes $ 1 $ minute.
In the second test, you can perform the following sequence:
1. ask a person to move from armchair $ 1 $ to armchair $ 4 $ , it takes $ 3 $ minutes;
2. ask a person to move from armchair $ 2 $ to armchair $ 6 $ , it takes $ 4 $ minutes;
3. ask a person to move from armchair $ 4 $ to armchair $ 5 $ , it takes $ 1 $ minute;
4. ask a person to move from armchair $ 3 $ to armchair $ 4 $ , it takes $ 1 $ minute.
In the third test, no seat is occupied so your goal is achieved instantly.