题目链接 比较综合的题,求最短路肯定都会,但是考虑如何计算最长的公共部分的长度。一开始我想的是跑最短路时记录路径,然后在路径上找公共部分。但是这样其实是错误的想法。因为他们的最短路线可能有多个交集。 实际上需要跑四遍最短路,分别是两人的起点和终点各跑一次,然后将最短路径上的点建新图。如果途中存在最短 ...
分类:
其他好文 时间:
2019-10-13 15:38:25
阅读次数:
77
题目: 给定两个数组,编写一个函数来计算它们的交集。 示例 1: 示例2: 说明: 输出结果中每个元素出现的次数,应与元素在两个数组中出现的次数一致。 我们可以不考虑输出结果的顺序。 进阶: 如果给定的数组已经排好序呢?你将如何优化你的算法? 如果 nums1 的大小比 nums2 小很多,哪种方法 ...
分类:
编程语言 时间:
2019-10-12 20:57:51
阅读次数:
91
A. chess 看到范围一开始猜是矩阵快速幂,开始推按列转移的dp,正方形之间有交集不好转移。 换了个角度,都恰好有c个,那么我在滑动正方形的时候损失几个就要获得几个,然后就看出了列之间的相等关系。 推了个$\Theta(n^4logm)$的dp。码完测了下n=50都T飞,怀疑人生10min,发现 ...
分类:
其他好文 时间:
2019-10-12 13:06:47
阅读次数:
125
Leetcode双周赛10 5079. "三个有序数组的交集" 给出三个均为 严格递增排列 的整数数组 arr1,arr2 和 arr3。 返回一个由 仅 在这三个数组中 同时出现 的整数所构成的有序数组。 示例: 输入: arr1 = [1,2,3,4,5], arr2 = [1,2,5,7,9] ...
分类:
其他好文 时间:
2019-10-07 21:41:44
阅读次数:
84
a = [1,2,3,4,5,9]b = [4,5,6,7,8]c = set(a)d = set(b)print(c | d) #并集print(c & d) #交集print(c - d) #差集 在c有d没有print(d - c) #差集 在d有c没有print(d ^ c) #反向交集pr ...
分类:
其他好文 时间:
2019-10-07 19:27:50
阅读次数:
67
学习一下数组、json、函数和类的检测等 1.数组 array_diff — 计算数组的差集 array_merge — 合并一个或多个数组 array_intersect — 计算数组的交集 array_keys — 返回数组中部分的或所有的键名 array_map — 为数组的每个元素应用回调函 ...
分类:
编程语言 时间:
2019-10-06 00:12:31
阅读次数:
114
集合 只保留下来唯一的元素 {123, 456, 789} 集合的操作1.并集:union、| 2.交集:intersection、&3.差:difference、-4.子集:issubset ...
分类:
其他好文 时间:
2019-10-05 20:14:10
阅读次数:
92
前言 多题一解是思维训练的好素材。 直曲线相切 案例01【原题】直线$y=x$上的动点为$P$,函数$y=lnx$上的动点是$Q$,求$|PQ|$的最小值。 【变式】直线$y=x$上的点为$P(x,y)$,函数$y=lnx$上的点是$Q(m,n)$,求$\sqrt{(x m)^2+(y n)^2}$ ...
分类:
其他好文 时间:
2019-10-05 16:50:48
阅读次数:
130
题目链接 大致题意为将某个子串进行翻转后,使得不包含相同字符的字符子串长度最长。只能翻转一次或零次。 设一个子串的状态为包含字符的二进制。如子串为$abacd$,则状态为$00000000000000001111$。 根据分析可以得到,一个子串和另一个子串如果没有交集,则两个串可以经过一次翻转合并在 ...
分类:
其他好文 时间:
2019-10-04 21:24:08
阅读次数:
112
你看看你有多菜,一点线段树的小小的运用,就不会写了; 题意:如果矩阵有交集,输出1,否则输出0(不包含内嵌); 思路:本题求交集,还得不包括内嵌的情况; 做过一道是求面积的题。跟这道类似,但在这里定义的方式跟那道题定的相反。 这里把下面的线定为了-1,上面定为了1; 在这道题里,先把矩阵的横向边按上 ...
分类:
其他好文 时间:
2019-10-04 17:00:32
阅读次数:
89