AT_arc047_a [ARC047A] タブの開きすぎ

Description

[problemUrl]: https://atcoder.jp/contests/arc047/tasks/arc047_a 高橋君はブラウザでネットサーフィンをするのが大好きです。 しかし、タブを開きすぎる癖があるので、よくブラウザがクラッシュします。 高橋君が使っているブラウザは開かれているタブが $ L $ 個を超えるとクラッシュします。 ブラウザはクラッシュすると自動で再起動して、$ 1 $ 個のタブが開いている状態になります。 初め、高橋君のブラウザは $ 1 $ 個のタブが開かれている状態です。 そのあとの高橋君の「新しいタブを開く」と「タブを閉じる」の履歴が与えられるので、高橋君が何回ブラウザをクラッシュさせるかを求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ L $ $ S $ - $ 1 $ 行目には高橋君が行った行動の個数を表す整数 $ N(1\ ≦\ N\ ≦\ 10^5) $ とブラウザがクラッシュする基準を表す整数 $ L(1\ ≦\ L\ ≦\ 10^5) $ が空白区切りで与えられる。 - $ 2 $ 行目には高橋君の行動の履歴を表す `+` と `-` のみからなる $ N $ 文字の文字列 $ S $ が与えられる。 - $ S $ は高橋君の行動を時系列順にならべたものであり、 `+` は新しいタブを開くことを、 `-` はあるタブを閉じることを表す。 - タブが $ 1 $ 個のときにタブを閉じることは無い。

Output Format

高橋君がブラウザをクラッシュさせる回数を表す整数を $ 1 $ 行に出力せよ。 出力の末尾に改行を入れること。

Explanation/Hint

### Sample Explanation 1 \- 最初のタブの個数は $ 1 $ 個です。 - $ 1 $ 回目の操作が終わったあとのタブの個数は $ 2 $ 個です。 - $ 2 $ 回目の操作が終わるとタブが $ 3 $ 個になりますが $ L $ より大きいのでブラウザはクラッシュして、タブは $ 1 $ 個になります。 - $ 3 $ 回目の操作が終わったあとのタブの個数は $ 2 $ 個です。 - $ 4 $ 回目の操作が終わったあとのタブの個数は $ 1 $ 個です。 - $ 5 $ 回目の操作が終わったあとのタブの個数は $ 2 $ 個です。 - $ 6 $ 回目の操作が終わるとタブが $ 3 $ 個になりますが $ L $ より大きいのでブラウザはクラッシュして、タブは $ 1 $ 個になります。 よって合計で $ 2 $ 回、ブラウザはクラッシュします。