首页 > TAG信息列表 > CEOI2017

Solution - [CEOI2017]Palindromic Partitions

思路: 用两个指针 \(L\) 和 \(R\) ,分别指向字符串首尾。从两端同时枚举找到相同的字符串, \(s[1 - L]\) 和 \(s[R - n]\), 然后下次再从 \(L\) 和 \(R\) 出发,继续找到相同的字符串,如果最后找到字符串的长度不足 \(n\) 就将答案加 \(1\)。 例如:\(\texttt{bonobo}\) 先找到 \(s[1 -

P4655 [CEOI2017]Building Bridges

令 \(f_i\) 表示最后一座桥的右端点在第 \(i\) 根柱子所需的最小代价,对 \(w\) 做一遍前缀和: \[f_i=\min\{f_j+(h_i-h_j)^2+w_{i-1}-w_j|0\leq j<i\} \]考虑两个决策点 \(j,k(h_j<h_k)\),假设 \(j\) 对于当前点 \(i\) 更优: \[f_j+(h_i-h_j)^2+w_{i-1}-w_j<f_k+(h_i-h_k)^2+w_{i-1}-w

「CEOI2017」Mousetrap

[CEOI2017]Mousetrap 题解 题意 \(~~~~\) 我并不能概括,所以这个板块只是来走过场的。 真实用意是来开 题目传送门 题解 \(~~~~\) 终于过来补档了,很妙的题(不看题解就想不出来,来记录一下。 \(~~~~\) 将陷阱房当作整棵树的根,那么老鼠就会尽量向下走,同理管理者会尽可能阻止老鼠这一

LOJ2482 CEOI2017 Mousetrap 二分答案、树形DP

传送门 表示想不到二分答案qwq 将树看作以陷阱为根。先考虑陷阱和起始点相邻的情况,此时老鼠一定会往下走,而如果管理者此时不做操作,那么一定会选择让操作次数变得最大的一棵子树。设\(f_i\)表示当前老鼠在第\(i\)个点、管理者先手,老鼠往下然后被逼回第\(i\)个点的最小操作次数。那

LOJ2484 CEOI2017 Palindromic Partitions DP、回文树

传送门 当我打开Luogu题解发现这道题可以Hash+贪心的时候我的内心是崩溃的…… 但是看到这道题不都应该认为这是一道PAM的练手好题么…… 首先把原字符串重排为\(s_1s_ks_2s_{k-1}s_3s_{k-2}...\)之后,我们不难发现:在一种对原串的回文划分中,对应的一对字符串在新的字符串上对应了一

[CEOI2017]Building Bridges

题目 斜率优化思博题,不想写了 之后就一直\(95\)了,于是靠肮脏的打表 就是更新了一下凸壳上二分斜率的写法,非常清爽好写 就当是挂个板子了 #include<algorithm> #include<iostream> #include<cstring> #include<cstdio> #define re register #define LL long long #define max(a,b) (