【直角三角形】python刷题记录

R3-新增每日一题打卡。

目录

思路(遍历中间+乘法原理):

乘法原理如下:

ps:

python的zip操作

矩阵转置

并行遍历

对象组合

创建字典

处理不等迭代长度

思路:

这题遍历主要从直角点开始遍历,用到了乘法原理。

乘法原理如下:

python 复制代码
class Solution:
    def numberOfRightTriangles(self, grid: List[List[int]]) -> int:
        #最终结果是(col_sum-1)*(row_sum-1)
        #先计算每一列的1之和
        col_sum=[sum(col) for col in zip(*grid)]
        ret=0
        #每一行的
        for row in grid:
            row_sum=sum(row)
            for r,c_s in zip(row,col_sum):
                if r==1:
                    ret+=(row_sum-1)*(c_s-1)
        return ret

ps:

python的zip操作
矩阵转置
并行遍历
对象组合
创建字典
处理不等迭代长度
相关推荐
玖玥拾12 分钟前
LeetCode 125 验证回文串
算法·leetcode
青 春 记 忆5 小时前
Dify Docker Compose 通用无损升级指南:从备份、双版本预演到切换与回滚
运维·人工智能·python·docker·容器
GlueNa2SiO35 小时前
03-Flask模板引擎Jinja2详解
笔记·python·flask
「QT(C++)开发工程师」6 小时前
C++ 11 常用for循环
开发语言·c++
我还记得那天6 小时前
0 初识C++
开发语言·c++
FfHUCisI6 小时前
Go 编译过程全景
开发语言·后端·golang
FfHUCisI6 小时前
Golang 语法分析与 AST:Parser 与 go/ast
开发语言·后端·golang
Asize7 小时前
146. LRU 缓存
算法
Asize7 小时前
543. 二叉树的直径
算法