自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 [学习笔记]生成树计数&矩阵树定理

问题描述:给定n阶无向图求其生成树个数。引入:行列式 一个n*n的矩阵A的行列式det(A)或者|A|定义为: ∑p∈P(n)(−1)f(p)Πni=1Ai,pi∑p∈P(n)(−1)f(p)Πi=1nAi,pi\sum_{p\in P(n)} (-1)^{f(p)}\Pi_{i=1}^n A_{i,p_i} 其中P(n)表示长度为n的排列的集合,f(p)表示排列p的逆序对个数。 行列...

2018-02-11 23:17:33 413

原创 Educational Codeforces Round 16 String Set Queries - AC自动机 - 分块

传送门 题目大意:每次向集合种加入一个串,删除一个串(已经存在的), 给定一个串,问集合中每一个串在询问串种出现次数之和,字符串总长<=3e5。强制在线。 题解:如果离线的话可以预先建出一个AC自动机,然后数据结构。 强制在线,一个做法是分块,考虑建立两个AC自动机,一个大一个小,每次向小的AC自动机里面加入一个串然后暴力重构,如果小的AC自动机大小超过s那么就把小的暴力合并到大的上面...

2018-02-10 14:19:31 257

原创 ZOJ 3494 BCD Code - AC自动机 - 数位dp

没有传送门 没有题目大意 AC自动机维护数位dp模板题 从一位神犇那里get到了一中不特判前导0姿势 我真是愚蠢晚期 真是愚蠢晚期 愚蠢晚期 晚期#include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#include<queue&...

2018-02-08 11:23:17 274

原创 Atcoder Regular 058 E - 和風いろはちゃん / Iroha and Haiku - 状压

题目大意:问有多少长度为N的数列{aN},满足每个数字权值在[1,10]中,并且不存在1#include#include#include#define lint long long#define LOG 17#define maxK 10#define V 1#define N 42#define mod 1000000007using namespace std;inli

2018-02-05 15:38:00 636

原创 codeforces 100792B Banana Brain's Bracelet Z-Box算法 - 线段树

传送门 题目大意:给一个循环串A,和一个字符串C,从A中截下一段B,并将B首尾相接成一个循环串使得C是B的一段。求使|B|最大。 题解:首先把A翻倍拼接得到S,前面放C,求一遍Z-Box,然后把S和C翻过来再求一遍,分别得到z1和z2。然后有两种情况,要么C是S的子串,输出|A|,要么C=C1+C2,然后S中出现了C2,隔了一段出现了C1,即C2….C1,需要满足总长度=|C|-z1[i]。这

2018-02-04 20:02:44 372

原创 codeforces 631D Messenger - KMP算法

传送门 题解:模板题,分类讨论。#include#include#include#define N 1000010#define lint long longusing namespace std;int nxt[N],pos[N];lint cs[N],ct[N];char s[N],t[N];inline int get_nxt(char *s,lint *c,int

2018-02-04 13:56:11 370

原创 codeforces 149E Martian Strings - AC自动机

传送门 题解:模板题#include#include#include#include#include#include#define M 110#define N 100010#define LEN 1010#define toi(c) (c-'A'+1)#define INF (INT_MAX/10-10)#define SIG 26using namespace

2018-02-04 13:55:08 617

原创 codeforces 536B Tavas and Malekas - Z-Box算法

传送门 题解:模板题#include#include#include#include#define mod 1000000007#define N 1000010#define lint long longusing namespace std;char s[N];int z[N],n,x[N],cnt[N];inline bool can(int x,int y){

2018-02-04 13:53:24 388

原创 codeforces 126B Password - Z-Box算法

传送门 题解:Z-Box算法模板题#include#include#include#include#define N 1000010using namespace std;char s[N];int z[N],n;int main(){ scanf("%s",s+1);n=strlen(s+1); if(n3) return !printf("Just a

2018-02-04 13:51:48 334

原创 [学习笔记] Z-Box算法

网上多得是,直接上代码:#include#include#include#include#define N 1000010using namespace std;char s[N];int z[N],n;int main(){ scanf("%s",s+1);n=strlen(s+1); for(int i=2,l=1,r=0;i<=n;i++) {

2018-02-04 13:50:06 479

原创 codeforces 331 D3.Escaping on Beaveractor - 线段树 - 基环树 - 倍增

传送门 题目大意:平面上有有些有向线段,平行于轴,当走到有向线段的时候自己的方向就要变成其方向,自己速度1。给定这些有向线段,多组数据,每组给出初始位置和初始方向和时间,问是否会走出边界,如果不,输出最后在哪里,否则输出离开边界时候的坐标。数据都是1e5,时间1e15。 题解:题目本身很简单,把所有东西离线下来,用线段树处理出从询问点或者某个有向线段的箭头处开始走会走到哪一个点方向发生转折,以

2018-02-03 21:53:13 480

原创 codeforces 919 E. Congruence Equation - 数学

我真的是越来越菜了这个初二学生十几行秒掉的我写了几十行 传送门 题目大意:求有多少n满足1p是一个质数,p题解:一开始想到了bsgs,发现不可以。注意到n比较大的时候,系数的n会膜p,指数上的n会%(p-1)。因此n的循环节最大是p*(p-1)。好像没什么用。考虑类似bsgs的过程,设n=t(p-1)+r, 那么a^n=a^r,这时候需要有na^r=b也就是t(p-1)=ba^(-r)-r

2018-02-01 19:28:37 484

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除