atcoder#ABC257C. [ABC257C] Robot Takahashi
[ABC257C] Robot Takahashi
配点 : 点
問題文
子供と大人があわせて 人います。 番目の人の体重は です。
それぞれの人が子供か大人かは、0
と 1
からなる長さ の文字列 によって表され、
の 文字目が 0
であるとき 番目の人が子供であることを、1
であるとき 番目の人が大人であることをさします。
ロボットである高橋君に対して実数 を設定すると、 高橋君はそれぞれの人に対して、体重が 未満なら子供、 以上なら大人と判定します。 実数 に対して を、高橋君に を設定したときに 人のうち子供か大人かを正しく判定できる人数で定めます。
が実数全体を動くとき、 の最大値を求めてください。
制約
- は
0
と1
からなる長さ の文字列 - は整数
入力
入力は以下の形式で標準入力から与えられる。
出力
の最大値を整数で一行に出力せよ。
5
10101
60 45 30 40 80
4
と設定すると、高橋君は 番目の人を子供、 番目の人を大人と判定します。 実際には 番目の人が子供、 番目の人が大人であるので、このとき、 番目の合計 人に対して正しく判定できています。 よって、 です。
人全員に対して正しく判定できるような は存在しないのでこのときが最大です。よって、 を出力します。
3
000
1 2 3
3
例えば、 とすると最大値 を達成します。 全員が大人、または全員が子供である可能性もあることに注意してください。
5
10101
60 50 50 50 60
4
例えば、 とすると最大値 を達成します。 同じ体重の人が複数人存在する可能性もあることに注意してください。