1. You are given an array of positive integers. Write a program that checks whether there is one or more numbers in the array (subset), whose sum is equal to S. Can you solve the task efficiently for large arrays?
2. You are given a matrix with passable and impassable cells. Write a recursive program that finds all paths between two cells in the matrix.