Medium
There are n cities. You are given an n x n matrix grid where grid[i][j] = 1 means city i and city j are directly connected. A province is a group of directly or indirectly connected cities. Return the total number of provinces.
Input: grid = [[1,1,0],[1,1,0],[0,0,1]] Output: 2
Input: grid = [[1,0,0],[0,1,0],[0,0,1]] Output: 3