Problem:
コンテストTシャツ (Contest T-shirts)

Segtree 君は、 $M$ 枚のコンテストTシャツを持っています。

彼は今から $N$ 日間、コンテストTシャツだけで過ごそうと考え、$i = 1, 2, 3, \dots, N$ に対して「 $i$ 日目に $A_i$ 枚目のTシャツを着る」という $N$ 個の計画を立てました。

しかし、今の計画のままだと洗濯が間に合わない可能性があるので、必要に応じて計画を変更し、2日連続で同じ服を着ないようにしたいです。

変更する必要のある計画の個数の最小値を求めてください。なお、与えられた制約の元で、計画の変更によって必ず条件を満たすようにできることが証明できます。

入力

入力は以下の形式で標準入力から与えられる。

$M$ $N$
$A_1$ $A_2$ $\ldots$ $A_N$

出力

変更する必要のある計画の個数の最小値を出力してください。

ただし、最後には改行を入れること。

制約

$2 \leq M \leq 10^9$

$1 \leq N \leq 10^5$

$1 \leq A_i \leq M$

入力は全て整数である。

入力例1

2 3
2 2 1

出力例1

1

入力例2

3 6
1 1 1 2 2 3

出力例2

2

Solution in Ruby (judge verdict: Accepted)

m, n = gets.chomp.split.map(&:to_i)
arr = gets.chomp.split.map(&:to_i)
count = 0
if m == 2
    temp = [0, 0]
    arr.each_with_index{|x, i|
        if i.even?
            temp[0] += 1 if x == 1
        else
            temp[0] += 1 if x == 2
        end
    }
    arr.each_with_index{|x, i|
        if i.even?
            temp[1] += 1 if x == 2
        else
            temp[1] += 1 if x == 1
        end
    }
    count = temp.min
else
    1.upto(n - 1){|i|
        if arr[i - 1] == arr[i]
            count += 1
            arr[i] = 0
        end
    }
end
puts count