Medium
Given a binary matrix grid, return the length of the shortest clear path from the top-left cell to the bottom-right cell, or -1 if none exists. A clear path visits only cells with value 0 and may move in any of the 8 directions. Path length is the number of visited cells.
Input: grid = [[0,1],[1,0]] Output: 2
Input: grid = [[0,0,0],[1,1,0],[1,1,0]] Output: 4