public int[][] clearZero(int[][] mat, int n) { // write code here int[][] result = new int[n][n]; int[] resulttmp = new int[n]; int[] h= new int[n]; List<Integer> hlist = new ArrayList<>(); List<Integer> llist = new ArrayList<>(); for (int j=0;j<n;j++){ int[] tmp = mat[j]; for (int i=0;i<n;i++){ int count =tmp[i]; if(count==0){ hlist.add(j); llist.add(i); } } } for (int x=0;x<n;x++){ int[] tmp = mat[x]; for (int y=0;y<n;y++){ if(hlist.contains(x) ||llist.contains(y)){ resulttmp[y] = 0; }else { resulttmp[y] = tmp[y]; } } result[x] = resulttmp; resulttmp = new int[n]; } return result; }