I was solving this question on dp and I use Java as my preferred language for programming.
But, I got a stack overflow error when I submitted the solution in Java, while the same code when converted into C++, ran perfectly fine.
Here is the Java submission : link
and here is the C++ submission : link
So, I searched on the internet and found out that Java's stack space is very less. :/
So, is there any way I could solve this question recursively in Java? I don't want to switch to C++ as I am very comfortable with Java and really like to code in it.
Java users, do you always implement an iterative version of an algorithm which could be solved recursively?