Dada uma string, um movimento consiste em remover a substring "actor" ou a substring "intact". Ao remover uma substring, uma nova string é produzida, e movimentos podem ser feitos a partir da nova string até que não seja mais possível fazer nenhum movimento.
Por exemplo, dada a string "inactortact", primeiro é possível remover a substring "actor" para obter "intact" e depois remover a substring "intact" para obter a string vazia, a partir da qual não é mais possível fazer nenhum movimento.
O objetivo deste desafio é determinar o número máximo de movimentos que podem ser feitos a partir de uma string inicial. Observe que, em algumas situações, mais de um movimento é possível, e nem todos os movimentos permitem sequências de movimentos igualmente longas.
Por exemplo, considere a string "actintactor". É possível remover a substring "intact" para obter "actor" e depois remover "actor" para chegar à string vazia (2 movimentos), mas remover "actor" do final produz a substring "actint", a partir da qual não é mais possível fazer nenhum movimento.