very hard dp(135 053 results)