[{"content":"看到子串出现类直接套上一个 SAM。\n然后非常套路地使用线段树合并来维护子树的 endpos。\n我们的限制即相当于是，给定一堆长度相等的线段（存在线段树里），然后要你算多少种方案插两根针不会把所有线段全部插到。\n我们考虑正难则反，考虑多少种会把所有插到。\n然后我们再转化，考虑一根针能插到的线段的起点位置是一个线段，即我们要选两个定长线段覆盖所有点。\n这个问题简单多了，我们设第一个线段的末尾是 $x$，另一个的开头是 $y$。\n我们先假设两个不是线段，我们假设要用 $[-\\infin, x]$ 和 $[y,\\infin]$ 来覆盖所有点。\n二元限制我们画成图，容易发现满足条件的 $(x,y)$ 点对是一个右下角的，阶梯状面积，其中凹点在 $x=y$ 上，且凹点的 $x$ 就是点的位置。\n然后我们考虑两个线段的限制，他其实就是给 $x$ 设定了一个上界，$y$ 设定了一个下界，然后这样合法的仍旧是一个阶梯状。\n我们考虑在使用线段树维护阶梯状的时候，我们不从横坐标维护有多少个 $y$ 满足在当前 $x$ 下合法，我们维护那个突出去主对角线的面积。\n你发现这个东西是好维护的，你对每个线段树节点维护第一个和最后一个点，然后 pushup 的时候算一下两边的贡献然后额外把少算的贡献算上即可。\n","permalink":"https://inftress.pages.dev/posts/%E5%88%B6%E8%83%A1%E7%AA%9C/","summary":"\u003cp\u003e看到子串出现类直接套上一个 SAM。\u003c/p\u003e\n\u003cp\u003e然后非常套路地使用线段树合并来维护子树的 endpos。\u003c/p\u003e\n\u003cp\u003e我们的限制即相当于是，给定一堆长度相等的线段（存在线段树里），然后要你算多少种方案插两根针不会把所有线段全部插到。\u003c/p\u003e\n\u003cp\u003e我们考虑正难则反，考虑多少种会把所有插到。\u003c/p\u003e\n\u003cp\u003e然后我们再转化，考虑一根针能插到的线段的起点位置是一个线段，即我们要选两个定长线段覆盖所有点。\u003c/p\u003e\n\u003cp\u003e这个问题简单多了，我们设第一个线段的末尾是 $x$，另一个的开头是 $y$。\u003c/p\u003e\n\u003cp\u003e我们先假设两个不是线段，我们假设要用 $[-\\infin, x]$ 和 $[y,\\infin]$ 来覆盖所有点。\u003c/p\u003e\n\u003cp\u003e二元限制我们画成图，容易发现满足条件的 $(x,y)$ 点对是一个\u003cstrong\u003e右下角的，阶梯状面积\u003c/strong\u003e，其中\u003cstrong\u003e凹点在 $x=y$ 上\u003c/strong\u003e，且凹点的 $x$ 就是点的位置。\u003c/p\u003e\n\u003cp\u003e然后我们考虑两个线段的限制，他其实就是给 $x$ 设定了一个上界，$y$ 设定了一个下界，然后这样合法的仍旧是一个阶梯状。\u003c/p\u003e\n\u003cp\u003e我们考虑在使用线段树维护阶梯状的时候，我们不从横坐标维护有多少个 $y$ 满足在当前 $x$ 下合法，我们维护那个突出去主对角线的面积。\u003c/p\u003e\n\u003cp\u003e你发现这个东西是好维护的，你对每个线段树节点维护第一个和最后一个点，然后 \u003ccode\u003epushup\u003c/code\u003e 的时候算一下两边的贡献然后额外把少算的贡献算上即可。\u003c/p\u003e","title":"P4384 QOJ2994 [八省联考 2018] 制胡窜"},{"content":"👋 我是谁 我是 Infter/Inftress，一名热爱算法的 OIer / 信息学竞赛选手。\n坐标：江西/南昌 CCF认证等级：8 级 📝 关于本博客 这里主要记录我在算法学习路上的点滴，包括但不限于：\n题解与思路复盘：记录经典题目的解题过程与代码实现。 算法笔记：整理数据结构与算法的核心要点，方便随时复习。 竞赛总结：赛后复盘与经验教训。 我希望通过写作，不仅能巩固自己的知识，也能帮助到同样在这条路上的你。\n🛠️ 博客技术栈 本博客由以下工具驱动：\n框架：Hugo —— 极速的静态站点生成器 主题：PaperMod —— 简洁、响应式、支持深色模式 部署：Cloudflare Pages + GitHub Actions —— 自动构建与全球 CDN 加速 评论：utterances —— 基于 GitHub Issues 的轻量评论系统 🔗 找到我 GitHub：https://github.com/Lg-Cr 洛谷：https://www.luogu.com.cn/user/386547 Codeforces：https://codeforces.com/profile/Infter Atcoder：https://atcoder.jp/users/Infter UOJ：https://uoj.ac/user/profile/LightningCreeper 电子邮箱：lightningcreeper@163.com QQ：3655485944 💬 关于评论 本博客的评论系统基于 GitHub Issues，你需要登录 GitHub 账号才能留言。所有评论内容均存储于本博客的 GitHub 仓库中，公开透明。\n本博客所有文章若无特殊声明，均采用 CC BY-SA 4.0 许可协议。转载请注明出处。\n","permalink":"https://inftress.pages.dev/about/","summary":"\u003ch2 id=\"-我是谁\"\u003e👋 我是谁\u003c/h2\u003e\n\u003cp\u003e我是 \u003cstrong\u003eInfter/Inftress\u003c/strong\u003e，一名热爱算法的 OIer / 信息学竞赛选手。\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e坐标\u003c/strong\u003e：江西/南昌\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eCCF认证等级\u003c/strong\u003e：8 级\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2 id=\"-关于本博客\"\u003e📝 关于本博客\u003c/h2\u003e\n\u003cp\u003e这里主要记录我在算法学习路上的点滴，包括但不限于：\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e题解与思路复盘\u003c/strong\u003e：记录经典题目的解题过程与代码实现。\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e算法笔记\u003c/strong\u003e：整理数据结构与算法的核心要点，方便随时复习。\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e竞赛总结\u003c/strong\u003e：赛后复盘与经验教训。\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e我希望通过写作，不仅能巩固自己的知识，也能帮助到同样在这条路上的你。\u003c/p\u003e\n\u003ch2 id=\"-博客技术栈\"\u003e🛠️ 博客技术栈\u003c/h2\u003e\n\u003cp\u003e本博客由以下工具驱动：\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e框架\u003c/strong\u003e：\u003ca href=\"https://gohugo.io/\"\u003eHugo\u003c/a\u003e —— 极速的静态站点生成器\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e主题\u003c/strong\u003e：\u003ca href=\"https://github.com/adityatelange/hugo-PaperMod\"\u003ePaperMod\u003c/a\u003e —— 简洁、响应式、支持深色模式\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e部署\u003c/strong\u003e：\u003ca href=\"https://pages.cloudflare.com/\"\u003eCloudflare Pages\u003c/a\u003e + \u003ca href=\"https://github.com/features/actions\"\u003eGitHub Actions\u003c/a\u003e —— 自动构建与全球 CDN 加速\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e评论\u003c/strong\u003e：\u003ca href=\"https://utteranc.es/\"\u003eutterances\u003c/a\u003e —— 基于 GitHub Issues 的轻量评论系统\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2 id=\"-找到我\"\u003e🔗 找到我\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eGitHub\u003c/strong\u003e：\u003ca href=\"https://github.com/Lg-Cr\"\u003ehttps://github.com/Lg-Cr\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e洛谷\u003c/strong\u003e：\u003ca href=\"https://www.luogu.com.cn/user/386547\"\u003ehttps://www.luogu.com.cn/user/386547\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eCodeforces\u003c/strong\u003e：\u003ca href=\"https://codeforces.com/profile/Infter\"\u003ehttps://codeforces.com/profile/Infter\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eAtcoder\u003c/strong\u003e：\u003ca href=\"https://atcoder.jp/users/Infter\"\u003ehttps://atcoder.jp/users/Infter\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eUOJ\u003c/strong\u003e：\u003ca href=\"https://uoj.ac/user/profile/LightningCreeper\"\u003ehttps://uoj.ac/user/profile/LightningCreeper\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e电子邮箱\u003c/strong\u003e：lightningcreeper@163.com\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eQQ\u003c/strong\u003e：3655485944\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2 id=\"-关于评论\"\u003e💬 关于评论\u003c/h2\u003e\n\u003cp\u003e本博客的评论系统基于 GitHub Issues，你需要登录 GitHub 账号才能留言。所有评论内容均存储于本博客的 GitHub 仓库中，公开透明。\u003c/p\u003e\n\u003chr\u003e\n\u003cp\u003e\u003cem\u003e本博客所有文章若无特殊声明，均采用 \u003ca href=\"https://creativecommons.org/licenses/by-sa/4.0/deed.zh\"\u003eCC BY-SA 4.0\u003c/a\u003e 许可协议。转载请注明出处。\u003c/em\u003e\u003c/p\u003e","title":"About"},{"content":"Test Test Test Test Test Test a\n#include \u0026lt;bits/stdc++.h\u0026gt; $a$ $$ a $$\n","permalink":"https://inftress.pages.dev/posts/hello-world/","summary":"\u003cp\u003eTest\n\u003cem\u003eTest\u003c/em\u003e\n\u003cstrong\u003eTest\u003c/strong\u003e\n\u003cem\u003e\u003cstrong\u003eTest\u003c/strong\u003e\u003c/em\u003e\n\u003cdel\u003eTest\u003c/del\u003e\n\u003cdel\u003eTest\u003c/del\u003e\n\u003ccode\u003ea\u003c/code\u003e\u003c/p\u003e\n\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" class=\"chroma\"\u003e\u003ccode class=\"language-cpp\" data-lang=\"cpp\"\u003e\u003cspan class=\"line\"\u003e\u003cspan class=\"cl\"\u003e\u003cspan class=\"cp\"\u003e#include\u003c/span\u003e \u003cspan class=\"cpf\"\u003e\u0026lt;bits/stdc++.h\u0026gt;\u003c/span\u003e\u003cspan class=\"cp\"\u003e\n\u003c/span\u003e\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003cp\u003e$a$\n$$\na\n$$\u003c/p\u003e","title":"Hello World"}]