hi, because there are 2^n different ways to divide the strings into subStrings. Think between every characters, there is two possible, divide it or not divide it. Two possible for n-1 slots, there are 2^(n-1) possible combination.