atcoder#ARC059B. [ARC059D] アンバランス

[ARC059D] アンバランス

题目描述

文字列 t t について、t t の長さが 2 2 以上であり、かつ t t の中の文字のうち過半数が同じ文字であるとき、t t アンバランスであると呼ぶことにします。例えば、voodoomelee はアンバランスであり、noona はアンバランスではありません。

小文字のアルファベットからなる文字列 s s が与えられます。s s にアンバランスな (連続する) 部分文字列が存在するか判定してください。存在する場合は、s s の中でそのような部分文字列が存在する位置を一つ示してください。

输入格式

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

s s

输出格式

s s にアンバランスな部分文字列が存在しない場合は、-1 -1 と出力せよ。

s s にアンバランスな部分文字列が存在する場合は、そのような部分文字列の一つを sa sa+1 ... sb s_a\ s_{a+1}\ ...\ s_{b} (1  a < b  s) (1\ ≦\ a\ <\ b\ ≦\ |s|) として、$ a $ $ b $ と出力せよ。そのような部分文字列が複数存在する場合は、いずれも正解とみなされる。

题目大意

给出字符串ss,求区间[l,r][l,r],使得该子串中有一种字母出现的次数严格大于该子串长度的一半.
如果没有符合条件的子串,输出两个-1.

由 @Fuko_Ibuki 提供翻译

needed
2 5
atcoder
-1 -1

提示

制約

  • 2  s  105 2\ ≦\ |s|\ ≦\ 10^5
  • s s は小文字のアルファベットのみからなる。

部分点

  • 2  s  100 2\ ≦\ |s|\ ≦\ 100 を満たすデータセットに正解した場合は、200 200 点が与えられる。

Sample Explanation 1

文字列 s2 s3 s4 s5 s_2\ s_3\ s_4\ s_5 = = eede はアンバランスな文字列です。他にもアンバランスな部分文字列は存在し、例えば 2 6 と出力しても正解となります。

Sample Explanation 2

文字列 atcoder はアンバランスな部分文字列を持ちません。