hard dp (111,419 results)