dynamic programming: longest unique chars substring iterative approach
longest substring of two unique chars: regex approach