shortest substring problem