【直角三角形】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操作
矩阵转置
并行遍历
对象组合
创建字典
处理不等迭代长度
相关推荐
cch89183 小时前
汇编与Java:底层与高层的编程对决
java·开发语言·汇编
荒川之神4 小时前
拉链表概念与基本设计
java·开发语言·数据库
workflower4 小时前
用硬件换时间”与“用算法降成本”之间的博弈
人工智能·算法·安全·集成测试·无人机·ai编程
chushiyunen4 小时前
python中的@Property和@Setter
java·开发语言·python
禾小西4 小时前
Java中使用正则表达式核心解析
java·python·正则表达式
yoyo_zzm4 小时前
JAVA (Springboot) i18n国际化语言配置
java·spring boot·python
小樱花的樱花4 小时前
C++ new和delete用法详解
linux·开发语言·c++
froginwe114 小时前
C 运算符
开发语言