def f11102(s)
%w(g c p).map {|c| s.count(c)}.cycle.each_cons(3).take(3).map {|(a, b, c)| c == 0 && 0 < b ? a : 0}.max
end
a = %w(gccgc ggggggg cppcppppccpppppc cppcppppccpgpppc)
p a.map {|s| [s, (f11102 s)]}
ZGVmIGYxMTEwMihzKQogICV3KGcgYyBwKS5tYXAge3xjfCBzLmNvdW50KGMpfS5jeWNsZS5lYWNoX2NvbnMoMykudGFrZSgzKS5tYXAge3woYSwgYiwgYyl8IGMgPT0gMCAmJiAwIDwgYiA/IGEgOiAwfS5tYXgKZW5kCmEgPSAldyhnY2NnYyBnZ2dnZ2dnIGNwcGNwcHBwY2NwcHBwcGMgY3BwY3BwcHBjY3BncHBwYykKcCBhLm1hcCB7fHN8IFtzLCAoZjExMTAyIHMpXX0K