To encrypt his message, FJ applies a sequence of "operations" to it, where an operation applied to a string S first shortens S by removing either its first or last character, after which the original string S is attached either at the beginning or end. For example, a single operation to the string ABCD could result in four possible strings:
BCDABCD ABCABCD ABCDABC ABCDBCDGiven the final encrypted string, please count the number of possible ways FJ could have produced this string using one or more repeated operations applied to some source string. Operations are treated as being distinct even if they give the same encryption of FJ's message. For example, there are four distinct separate ways to obtain AAA from AA, corresponding to the four possible operations above.
입력 ABABA 출력 6
출처:USACO 2014 February Contest, Bronze