def f11117(s)
e = %w(o d a i).cycle.map
s.chars.each_with_object([]) {|c, a| a << e.next if c == e.peek}.size / 4
end
a = %w(odaiodai ooddaai idao ododoadioadioadioadioadioadiodaioadodioadiaodi)
p a.map {|s| [s, (f11117 s)]}
ZGVmIGYxMTExNyhzKQogIGUgPSAldyhvIGQgYSBpKS5jeWNsZS5tYXAKICBzLmNoYXJzLmVhY2hfd2l0aF9vYmplY3QoW10pIHt8YywgYXwgYSA8PCBlLm5leHQgaWYgYyA9PSBlLnBlZWt9LnNpemUgLyA0CmVuZAphID0gJXcob2RhaW9kYWkgb29kZGFhaSBpZGFvIG9kb2RvYWRpb2FkaW9hZGlvYWRpb2FkaW9hZGlvZGFpb2Fkb2Rpb2FkaWFvZGkpCnAgYS5tYXAge3xzfCBbcywgKGYxMTExNyBzKV19Cg==
[["odaiodai", 2], ["ooddaai", 1], ["idao", 0], ["ododoadioadioadioadioadioadiodaioadodioadiaodi", 5]]