随笔分类 -  思想——尺取法/双针/two-pointers

摘要:XXVIII.[TopCoder12693]EnclosingTriangle 经典套路是固定一个点,求出所有合法的剩余两个点。 为了方便,我们将环状的图形拆开,拆成 \(4n\) 个点。然后,我们枚举一个点 \(i\) 明显发现,剩下两个点必定位于 \(i\) 两侧的一端区间内,不妨设一半是 \( 阅读全文
posted @ 2021-04-05 20:55 Troverld 阅读(86) 评论(0) 推荐(0)
摘要:XXVII.CF611G New Year and Cake 做题时居然忘记了叉积满足分配律/jk 我们先将图形翻转成为逆时针排布。 首先,我们发现,若总图形的面积是 \(area\),切完后,较小一半的面积是 \(nowarea\),则贡献是 \(area-2nowarea\)。 我们记点 \(p 阅读全文
posted @ 2021-04-05 20:53 Troverld 阅读(54) 评论(0) 推荐(0)
摘要:XXII.[USACO10OPEN]Triangle Counting G 题解 阅读全文
posted @ 2021-04-05 20:39 Troverld 阅读(34) 评论(0) 推荐(0)
摘要:XVI.[JOISC2014]二人の星座 这题乍一看,和之前X.[POI2008]TRO-Triangles好像思想差不多;但是实际操作一番并进行了很多失败的尝试后,发现并不能简单应用。 后来知道了一种判两个(三点不共线的)三角形相离的做法:它们一定存在且只存在两条相同的外割线。(一个三角形的外割线 阅读全文
posted @ 2021-04-05 20:28 Troverld 阅读(69) 评论(0) 推荐(0)
摘要:XI.[JSOI2016]炸弹攻击2 题解 阅读全文
posted @ 2021-04-05 20:18 Troverld 阅读(36) 评论(0) 推荐(0)
摘要:X.[POI2008]TRO-Triangles 本题介绍两种做法。 一种是我自己的做法: 考虑某$\triangle ABC$,\(2S_{\triangle ABC}=\Big|\vec{AB}\times\vec{AC}\Big|=\Big|(\vec{B}-\vec{A})\times(\v 阅读全文
posted @ 2021-04-05 20:17 Troverld 阅读(93) 评论(0) 推荐(0)
摘要:XXVIII.[BZOJ3277]串/CF204E Little Elephant and Strings 这两题是重题,代码改都不改交上去就能A,故放在一起讲。 网上的大多数SA题解都是$O(n\log^2n)$或$O(n\log n)$的复杂度,太令人不爽了。因此,这里有一种复杂度$O(n)$的 阅读全文
posted @ 2021-04-01 11:10 Troverld 阅读(86) 评论(0) 推荐(0)
摘要:V.UVA11107 Life Forms 这题同上题类似,只不过把“在全部串中出现”变成了“在超过一半(即$\left\lfloor\dfrac{2}\right\rfloor+1$)个串中出现”。 这题中我的方法是上题中提到的“two-pointers+单调队列”算法。第一遍跑求出所有满足“出现 阅读全文
posted @ 2021-03-31 16:54 Troverld 阅读(65) 评论(0) 推荐(0)
摘要:XXV.Sasha and Algorithm of Silence's Sounds 假设我们把区间$[l,r]\(里的格子连出来,然后发现出现一个环,则我们可以肯定地说,所有具有\)[l,r]$作为子区间的区间,都是不合法的。 于是我们对于每个位置$l$,都可以找出其最右边的不成环的位置$r$。 阅读全文
posted @ 2021-03-31 16:37 Troverld 阅读(65) 评论(0) 推荐(0)
摘要:CXIV.[POI2014]ZAL-Freight 题解 阅读全文
posted @ 2021-03-31 14:31 Troverld 阅读(44) 评论(0) 推荐(0)