classSolution:defcountPairs(self, n:int, edges: List[List[int]])->int:d = defaultdict(list)isCnt =set()for i inrange(len(edges)):d[edges[i][0]].append(edges[i][1])d[edges[i][1]].append(edges[i][0])ans =0for i inrange(n):if i in isCnt:continuecnt =1l = d[i]isCnt.add(i)whilelen(l)>0:newl =[]for j in l:if j in isCnt:continuenewl.extend(d[j])cnt +=1isCnt.add(j)l = newl.copy()ans += cnt *(n - cnt)return ans //2
打包
偶尔有一些复用性很高,复杂度也很高的函数要反复调用,可以自行打包,安装
打包结构如下
以iso_timer为例
mkdir common
vim __init__.py
cd common
vim __init__.py
vim format.py# init.py
from .common import *# /common/init.p…