随笔分类 - 题解
摘要:
A - Takahashi san 2 直接判断字符串是否以san结尾即可。 点击查看代码 #include<bits/stdc++.h> using namespace std; int main(){ string s; cin>>s; int n=s.size(); if(s[n-1]=='n
阅读全文
![[题解]ABC374 A~E](https://img2024.cnblogs.com/blog/3322276/202410/3322276-20241006111351832-715445367.png)
摘要:
P7077 [CSP-S2020] 函数调用 题意简述 给定一个长度为\(n\)的序列\(a_1,a_2,\dots,a_n\),给定\(m\)个函数,每个函数可能是下面\(3\)种类型,用\(T_x\)表示函数\(x\)的类型: \(T_x =1\),对下标\(p\)增加\(v\)。 \(T_x
阅读全文
![[题解]P7077 [CSP-S2020] 函数调用](https://img2024.cnblogs.com/blog/3322276/202410/3322276-20241004130934216-1650396502.png)
摘要:
Portal:https://www.luogu.com.cn/contest/200833 \(\bf{100+100+12+0+7+0=\color{indianred}219}\)\(\bf{\ ,\ rk230}\) A - もしも 容易发现可以构造\(1,x\)或\(x,1\)让序列如\(
阅读全文
![[题解]MX-X6 A~B](https://img2024.cnblogs.com/blog/3322276/202410/3322276-20241004130816202-713287165.png)
摘要:
Portal:https://www.luogu.com.cn/contest/179008 \(\bf{100+50+50+25+5=\color{indianred}225}\)\(\bf{\ ,\ rk.\ 184}\) A - Strange Cake Game 显然对于小W,向下移动蛋糕刀
阅读全文
![[题解]SFMOI Round I A~C](https://img2024.cnblogs.com/blog/3322276/202410/3322276-20241004130753068-47137814.png)
摘要:
P2444 [POI2000] 病毒 题目核心是多模式匹配,所以考虑用对所有模式串建立AC自动机。 我们把自动机上,存在一个模式串作为前缀的节点,称作“危险节点”。 如果无限长的安全代码存在的话,匹配过程中Trie图上一定有节点会经过多次,即存在环;而且经过的所有节点都不是“危险节点”,否则就包含病
阅读全文
![[题解]P2444 [POI2000] 病毒](https://img2024.cnblogs.com/blog/3322276/202408/3322276-20240821174526001-874377622.png)
摘要:
P3311 [SDOI2014] 数数 看到多模式匹配,我们考虑先对所有模式串建立AC自动机。 然后发现这道题和P4052 文本生成器(题解)挺像的,后者让求包含至少一个模式串的个数,这道题让求一个也不包含的个数,这个就是一个用不用\(26^m\)去减的问题,很好处理。但这道题还多了一个条件,“幸运
阅读全文
![[题解]P3311 [SDOI2014] 数数](https://img2024.cnblogs.com/blog/3322276/202408/3322276-20240820165017914-788609415.png)
摘要:
P4052 [JSOI2007] 文本生成器 正难则反,我们发现用总字符串个数\(26^m\),减去不可读的字符串个数,可以得到结果。 下文中的“答案”均表示“不可读的字符串个数”。 要使一个字符串不可读,就不能让任何模式串在其中出现。如果某个主串的第\(i\)位与自动机的节点\(j\)相匹配,那么
阅读全文
![[题解]P4052 [JSOI2007] 文本生成器](https://img2024.cnblogs.com/blog/3322276/202408/3322276-20240819174738247-408869217.png)
摘要:
UVA1127 Word Puzzles 我们对模式串建立AC自动机,然后就比较板子了,只需要把\(8\)个方向都跑一遍匹配就可以了。 对于单个测试数据,建自动机复杂度是\(O(\sum|s|\ |\Sigma|)\),总时间复杂度是\(O(\sum|s|\ |\Sigma|+8nm)\)。 注意输
阅读全文
![[题解]UVA1127 Word Puzzles](https://img2024.cnblogs.com/blog/3322276/202408/3322276-20240819155101531-569440967.png)
摘要:
P3966 [TJOI2013] 单词 对所有模式串建立AC自动机。 用\(p[i]\)来表示经过节点\(i\)的字符串个数。 那么节点\(u\)的答案就是fail树上,以\(u\)为根的子树的\(p\)之和。 由于我们已经计算了\(p[i]\),所以字符串\(i\)作为模式串本身&模式串前缀的情况
阅读全文
![[题解]P3966 [TJOI2013] 单词](https://img2024.cnblogs.com/blog/3322276/202408/3322276-20240812185056569-1729911989.png)
摘要:
P2292 [HNOI2004] L 语言 注: 下文中,\(s[l\sim r]\)表示截取字符串\(s\)的第\(l\)个字符到第\(r\)个字符。 文字描述的字符串下标从\(1\)开始,但代码实现从\(0\)开始。 我们建出AC自动机后,有一个比较暴力的思路。 我么用\(f[i]\)表示待查找
阅读全文
![[题解]P2292 [HNOI2004] L 语言](https://img2024.cnblogs.com/blog/3322276/202410/3322276-20241014005500153-752469285.png)
摘要:
A - Glutton Takahashi 给定\(n\)道菜,每道菜要么是甜的(用sweet表示),要么是咸的(用salty表示)。必须按顺序吃,如果连续吃到\(2\)个甜的菜,就会浑身难受吃不下去了。请问是否能吃完这些菜。 按题意模拟即可,只要前\(n-1\)个元素中有连续的sweet就输出No
阅读全文
![[题解]ABC364 A~F](https://img2024.cnblogs.com/blog/3322276/202407/3322276-20240728171544313-772213307.png)
摘要:
P2672 [NOIP2015 普及组] 推销员 为了便于操作,将住户信息按疲劳值从大到小排序。 那么对于选\(X\)个住户,有\(2\)种情况: 选疲劳值前\(X\)大的住户,答案即为\(\sum\limits_{i=1}^X a[i] + 2\times \max\limits_{i=1}^X
阅读全文
![[题解]P2672 [NOIP2015 普及组] 推销员](https://img2024.cnblogs.com/blog/3322276/202407/3322276-20240727143758321-533725547.png)
摘要:
P9755 [CSP-S 2023] 种树 迟来的补题 本题是让最小化所有树长到指定高度日期的最大值,于是想到二分答案。 那么,对于一个给定的期限\(x\),如何判断是否能在这个日期内完成任务呢? 首先我们发现前\(n\)天每天都要种树,那么假设我们已经知道了每个地块最晚哪个日期种树,能保证在期限\
阅读全文
![[题解]P9755 [CSP-S 2023] 种树](https://img2024.cnblogs.com/blog/3322276/202408/3322276-20240802165901259-1916914897.png)
摘要:
P3187 [HNOI2007] 最小矩形覆盖 调了半天居然是因为没判断浮点精度误差才\(\colorbox{IndianRed}{\texttt{\color{White}{WA}}}\)了\(3\)个点,其他都没有问题!警钟长鸣…… 首先有一个结论:凸多边形的最小外接矩形一定和它的一条边重合。
阅读全文
![[题解]P3187 [HNOI2007] 最小矩形覆盖](https://img2024.cnblogs.com/blog/3322276/202407/3322276-20240724161619403-462934982.png)
摘要:
P4166 [SCOI2007] 最大土地面积 解法\(1\) - \(O(n^2)\) 我们运用调整法,可以证明这个四边形的\(4\)个顶点一定都在凸包的顶点上,具体来说: \(\textbf{Proof:}\) 首先我们知道,凸包内,到某条直线距离最大的点一定包括\(1\)个顶点。 接下来我们考
阅读全文
![[题解]P4166 [SCOI2007] 最大土地面积](https://img2024.cnblogs.com/blog/3322276/202407/3322276-20240720202732522-771921727.png)
摘要:
P7883 平面最近点对(加强加强版) 解题思路 我们用分治的思路来做。 首先将节点按\(x\)坐标从小到大排序,取中间的节点,把点集划分为\(2\)部分。 接下来我们假设左右\(2\)个部分已经求出答案了。 那么目前的答案就是左右答案的最大值。接下来我们只需要处理两区间相交的部分就可以了。 我们已
阅读全文
![[题解]P7883 平面最近点对(加强加强版)——分治解法](https://img2024.cnblogs.com/blog/3322276/202407/3322276-20240720190217959-2012014365.png)
摘要:
POJ3675 Telescope 题意简述 多测。每次给定一个\(N\)边形(保证相邻输入的顶点在多边形上也是邻接的),再给定一个以\((0,0)\)为圆心,半径为\(r\)的圆。 请计算出多边形和圆相交部分的面积(保留\(2\)位小数)。 \(3\le N\le 50\) \(0.1\le r\
阅读全文
![[题解]POJ3675 Telescope——求多边形与圆相交部分的面积](https://img2024.cnblogs.com/blog/3322276/202407/3322276-20240717202747445-113662898.png)
摘要:
POJ2074 Line of Sight 题意简述 多测。给定若干条线段,全部与\(x\)轴平行。 其中有\(2\)条线段表示房子和人行道(虽然翻译不是人行道就是了),保证房子在人行道上面。 其他线段表示障碍物(不保证在房子和人行道之间)。 请找出人行道上最长的连续部分,使得在这中间可以完整地看到
阅读全文
![[题解]POJ2074 Line of Sight](https://img2024.cnblogs.com/blog/3322276/202407/3322276-20240716213719496-1755335284.png)
摘要:
POJ3304 Segment 题意简述 多测,每次给定\(n(n\le 100)\)条线段,请问是否能找到\(1\)条直线,使得所有线段在该直线上的投影有公共部分。 注:两点距离\(<10^{-8}\)被认为是相等的。 思路分析 题意转化一下,就是要我们找一条直线\(l_1\),穿过所有线段。这样
阅读全文
![[题解]POJ3304 Segment](https://img2024.cnblogs.com/blog/3322276/202407/3322276-20240716202754776-1584366220.png)
摘要:
UVA10902 Pick-up Sticks 题意简述 多测。给定坐标系上依次给定\(n\)根木棍的起始和终止坐标,按顺序放置这些木棍,询问最终处在最上层的木棍有哪些。 \(n\le 100000\)。保证任意时刻最上层的木棍不超过\(1000\)个。 思路分析 看起来数据范围很刁钻,不过除了暴力
阅读全文
![[题解]UVA10902 Pick-up Sticks](https://img2024.cnblogs.com/blog/3322276/202407/3322276-20240716202718990-1394825788.png)