【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;
}

 

posted @ 2020-11-08 19:01  温暖了寂寞  阅读(136)  评论(0编辑  收藏  举报