AT_past202010_d 分身

Description

[problemUrl]: https://atcoder.jp/contests/past202010-open/tasks/past202010_d 左右方向一列に並ぶ $ N $ 個のマスがあります。左から $ i $ 番目のマスをマス $ i $ と呼ぶことにします。 いくつかのマスには忍者がいて、その配置は文字列 $ S $ として与えられます。 $ S $ の $ i $ 番目の文字が `#` のときマス $ i $ には忍者がいて、 `.` のときマス $ i $ には忍者がいません。 今からタイプ A とタイプ B の $ 2 $ 種類の操作を任意の順序で何回か行うことができます。一回も操作を行わなくても構いません。 - タイプ A : マス $ 1 $ 以外に現在いる全ての忍者は、自分の一つ左のマスに分身を作る。分身は以後本物同様に扱われる。 - タイプ B : マス $ N $ 以外に現在いる全ての忍者は、自分の一つ右のマスに分身を作る。分身は以後本物同様に扱われる。 タイプ A を行う回数を $ x $ 、タイプ B を行う回数を $ y $ とします。 全ての操作の終了後、全てのマスに少なくとも一人の忍者がいるような手順のうち、$ x\ +\ y $ が最小になるような手順における $ x,\ y $ を一つ求めてください。

Input Format

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

Output Format

タイプ A を行う回数を $ x $ 、タイプ B を行う回数を $ y $ としたとき、$ x\ +\ y $ が最小になるような手順における $ x,\ y $ を一つ、空白区切りで出力せよ。

Explanation/Hint

### 注意 この問題に対する言及は、2020/11/8 18:00 JST まで禁止されています。言及がなされた場合、賠償が請求される可能性があります。 試験後に総合得点や認定級を公表するのは構いませんが、どの問題が解けたかなどの情報は発信しないようにお願いします。 ### 制約 - $ 1\ \le\ N\ \le\ 50 $ - $ N $ は整数 - $ S $ は `.` と `#` からなる。 - $ S $ には少なくとも $ 1 $ つ `#`が含まれる。 ### Sample Explanation 1 例えばタイプ A, タイプ B の順に行うと、各マスの忍者の有無は `.#..#` -> `##.##` -> `#####` と変化し、最終的に全てのマスに忍者が存在するようになります。 タイプ A とタイプ B の合計回数が $ 2 $ 未満で目的を達成することはできないのでこれは答えの一つです。 他にも例えば `2 0` は正しい答えです。 ### Sample Explanation 2 これは唯一の正しい答えです。 ### Sample Explanation 3 全く分身しなくて良い場合もあります。