首页 > TAG信息列表 > POI2005
P3426 [POI2005]SZA-Template
对于字符串刻印章,使每个字符都能被印出来,并且不能印上其他字符。求印章最短长度。 \(|S|\leq 5\times 10^5\)。 看到题目第一感觉是KMP,但具体实现很费脑筋。 先举个例子: 1 2 3 4 5 6 7 8 9 10 11 12 13 s[i] a b a b b a b a b b a b a nxt[i] 0 0 1 2 0 1 2 3 4 5 6 7【Luogu P3426】[POI2005]SZA-Template
链接: 洛谷 题目大意: 给定一个字符串 \(s\),找到最小的 \(t\) 使得 \(t\) 匹配的位置能覆盖 \(s\)。 思路: \(t\) 一定是 \(s\) 的一个前后缀(\(s\) 也算),考虑 DP。设 \(f_i\) 表示前缀 \(i\) 的答案,那么 \(f_i\) 要么是 \(i\),要么是 \(f_{\mathrm{border}(i)}\)。那么如果是 \(f_{\mat「题解」POI2005 AKC-Special Forces Manoeuvres
本文将同步发布于: 洛谷博客;csdn;博客园;简书。 题目 题目链接:洛谷 P3428、官网。 题意简述 给定 n n n 个圆 ( x[POI2005]PRA-Dextrogyrate Camel 【DP】【计算几何】
洛谷P3433 Description 平面上有 \(n\) 个点 \((x_i,y_i)\)。小 \(L\) 从 \(1\) 号点出发,面向 \(2\) 号点以直线前进。每到达一个点,小 \(L\) 就可以让前进方向顺时针旋转 \([0,180)\) 度,并向下一个点以直线前进,最终回到 \(1\) 号店。要求在整个行进过程中路径不相交(不包括顶点处),不P3419 [POI2005]SAM-Toy Cars
链接:Miku、多组数据(蓝题和紫题的区别就是多组数据) -------------------------------- 非常显然的贪心思路就是能放就放,放满了然后把下一次使用间隔最久的拿走、 但是这样会有一个问题,如果它已经进去了怎么办, 直接continue会wa掉,因为即使已经有了,我们还是应该更新一下下一个的值(易洛谷 P3420 [POI2005]SKA-Piggy Banks 题解
蒟蒻的第二篇题解 嗯,直接进入正题 先告诉你们这是并查集,好吧,标签上面有,再来分析这为什么是并查集。 根据题意: 每一个存钱罐能够用相应的钥匙打开或者被砸开,Byteazar已经将钥匙放入到一些存钱罐中 我们可以理解成: 如果这是一个联通块的“祖先”(也可以称为根吧,蒟蒻不知道该怎么称呼)[POI2005]A Journey to Mars 单调队列
本人水平有限,题解不到为处,请多多谅解 本蒟蒻谢谢大家观看 题目:传送门 首先考虑一个问题:跑一圈都是跑的相同的一圈,为什么有的点开始就能跑完,有的点开始就跑不完呢。 比如第3个点跑不完,是“NIE”。第1个点能跑完,是“TAK”。 第3个点跑不完,一定是在半路上某两个点中间luoguP3431 [POI2005]AUT-The Bus
安利系列博文 https://www.cnblogs.com/tyner/p/11565348.html https://www.cnblogs.com/tyner/p/11605073.html 做个小总结 树状数组二维数点的特征: 矩阵(假设x轴从左到右,y轴从下到上) 是树状数组可以维护的 能用树状数组的要求 : 维护的东西要有前缀性(说人话:比如我们平常用它题解 P3431 洛谷【[POI2005]AUT-The Bus】
题面: Byte City 的街道形成了一个标准的棋盘网络 – 他们要么是北南走向要么就是西东走向. 北南走向的路口从 1 到 n编号, 西东走向的路从1 到 m编号. 每个路口用两个数(i, j) 表示(1 <= i <= n, 1 <= j <= m). Byte City里有一条公交线, 在某一些路口设置了公交站点. 公交车从 (1,[Poi2005]Piggy Banks小猪存钱罐
Description Byteazar有 N 个小猪存钱罐. 每个存钱罐只能用钥匙打开或者砸开. Byteazar已经把每个存钱罐的钥匙放到了某些存钱罐里. Byteazar 现在想买一台汽车于是要把所有的钱都取出来. 他想尽量少的打破存钱罐取出所有的钱,问最少要打破多少个存钱罐. Input 第一行一个整数 N (1BZOJ.1535.[POI2005]SZA-Template(KMP DP)
BZOJ 洛谷 \(Description\) 给定一个字符串\(s\),求一个最短的字符串\(t\)满足,将\(t\)拼接多次后,可以得到\(s\)。拼接是指,可以将\(t\)放在当前串的任意位置,但要保证对应位置相同。(不太会说,看样例吧...) \(|s|\leq5\times10^5\)。 \(Solution\) 首先\(t\)既是\(s\)的前缀也是\(s\)的