Intution behind print-subsequences

Can somebody please help me understanding the intuition behind the print subsequences recursion problem. I was able to get the intuition behind the ArrayList implementation.