Difficult Programming Question Using Spark