The kindergarten teachers had finally managed to get all the
kids in a line for the walk to the bus station and the weekly
excursion. What they hadn’t thought of was the fact that today
different kids were supposed to go to different excursions.
They should walk as one line to the bus station, but to avoid
total chaos when they arrive there, all the kids going to the
zoo should be in the beginning of the line, the ones going to
the lake should be in the middle and the rest, going to the
science museum, should be in the end.
Since it takes a lot of time to get all the kids to stand in
a line no kid may step out of the line. To get the line
organized after excursion group, kids standing next to each
other can swap places. Now the kindergarten teachers wonder, if
they will have time to do this and still catch their bus.
You will be given a sequence of numbers 0, 1, and 2,
denoting the excursion destinations of each kid from first to
last in the line. Pairs of adjacent kids can swap positions,
and the line should be organized after destination number
starting with 0 and ending with 2. What is the minimum number
of swaps required to organize the line?
The only line of input contains a string consisting of
characters 0, 1 or 2, denoting the destinations of kids. The
length of the string will be at most $1\, 000\, 000$ characters.
Output one line with one integer – the minimum number of
swaps needed to get the kids in order.
|Sample Input 1
||Sample Output 1