【leetcode】二進制矩陣中的特殊位置

 

int numSpecial(int** mat, int matSize, int* matColSize){
    int i,j,k,n,sum=0;
    int rows[100]={0};
    int cols[100]={0};    
    for(i=0; i<matSize; i++)
    {
        for(j=0; j<*matColSize; j++)
        {
            if(mat[i][j]==1)
            {
                if (rows[i]==0){
                    for(k=j+1; k<*matColSize && mat[i][k]==0; k++);
                    rows[i] = (k!=*matColSize)?2 :1;
                }
                if (cols[j]==0){
                     for(n=i+1; n<matSize && mat[n][j]==0; n++);
                    cols[j]=(n!=matSize)?2 :1;
                }            
                if(rows[i]==1 && cols[j]==1)
                    sum++;
            }
        }       
    }
    return sum;
}
相關文章
相關標籤/搜索