最长双回文串 裸的回文自动机,将串reverse再插入一遍即可。 双倍回文 这题可以只维护偶回文串然后疯狂加特判判掉奇串 回文自动机,再多维护一个trans指针,指向trans[x]表示长度小于len[x]/2的最长的回文后缀 trans指针可以从父亲(不是fail)的trans指针求出。 其实还可 ...
分类:
其他好文 时间:
2019-12-25 20:47:39
阅读次数:
119
题目大意: 给定$n$个蚂蚁和$n$颗苹果树的坐标,要求每个蚂蚁爬到一颗苹果树旁,使得每个蚂蚁路线不相交且路线总长度最小,求每个蚂蚁爬到哪个苹果树旁? 首先假设有两只蚂蚁路径相交,那么这两个蚂蚁交换目标一定使得总路线缩短且不相交,所以总长度最短时所有蚂蚁路线一定不相交 怎么让总路线最短呢?二分图最小 ...
分类:
其他好文 时间:
2019-12-24 20:40:56
阅读次数:
89
//方式一 //Reciever.h #pragma once class Reciever{ public: Reciever(); ~Reciever(); void Action(); protected: private: }; //Reciever.cpp #include"Recieve ...
分类:
其他好文 时间:
2019-12-23 19:08:20
阅读次数:
91
以下代码来源: 设计模式精解-GoF 23种设计模式解析附C++实现源码 //Memento.h #pragma once #include<string> class Memento; class Originator{ public: typedef std::string State; Ori ...
分类:
其他好文 时间:
2019-12-23 15:03:30
阅读次数:
112
整体二分模板,所谓整体二分其实就是将修改与询问保存下来,然后二分值域; 树套树亦可,但是码量较大; #include <iostream> #include <cstdio> #include <algorithm> using namespace std;const int N=1e5+7;typ ...
分类:
其他好文 时间:
2019-12-23 13:18:32
阅读次数:
83
以下代码来源: 设计模式精解-GoF 23种设计模式解析附C++实现源码 //AbstractionImp.h #pragma once class AbstractionImp { public: virtual ~AbstractionImp(); virtual void Operation( ...
分类:
其他好文 时间:
2019-12-21 15:18:47
阅读次数:
80
Runda próbna: A + B 设$f[i]$表示两数相加得到前$i$位的方案数,由$f[i-1]$和$f[i-2]$转移得到。 Runda 1: Wina [B] 求出为了拿走每个数至少需要拿走几个数即可。 Muzyka pop [A] 数位DP,设$f[i][j][l][r]$表示已经考 ...
分类:
其他好文 时间:
2019-12-21 10:13:18
阅读次数:
90
自从明明学了树的结构,就对奇怪的树产生了兴趣...... 给出标号为1到N的点,以及某些点最终的度数,允许在任意两点间连线,可产生多少棵度数满足要求的树?Input第一行为N(0 < N < = 1000)接下来N行,第i+1行给出第i个节点的度数Di,如果对度数不要求,则输入-1Output一个整 ...
分类:
其他好文 时间:
2019-12-20 21:01:23
阅读次数:
130
description analysis 需要知道一棵树的重心一定在从根出发的重链上,可以考虑先进行树链剖分弄出重儿子和次重儿子,再倍增维护重儿子 由于重链上有一个或两个重心,接下来求的重心都是深度较大的,只需判断其父节点是否也满足重心的性质即可 现在要断掉一条边$(x,y)$,假设$x$是$y$的 ...
分类:
其他好文 时间:
2019-12-17 18:25:59
阅读次数:
162