Editorial for Baltic OI '14 P2 - Three Friends
Submitting an official solution before solving the problem yourself is a bannable offence.
Subtask 1
We try removing each of the possible letters, thus simulating all possible cases of string . For each letter, we construct a new string , which contains the final string with one letter deleted. We check if is of the form , and add as one of the possible answers. Depending on how many different answers we found, we output the result.
Complexity: For each of letters, we match strings of length , thus complexity is .
Subtask 2
The key observation is to notice that the initial string could only be in two of the positions: either , if the letter was inserted after a first copy of initial string , or if the letter was inserted before a second copy of initial string .
We have to check both cases, to see if initial string is valid. We match it symbol-by-symbol with the remaining substring of , to see if they only differ by one symbol.
Yet again, depending on how many different answers we found, we output the result.
Complexity: We match two strings of length two times, thus complexity is .
Comments