posted @ 2019-07-12 17:30
Al_Ca
阅读(211)
推荐(0)
摘要:
void tarjan(int x) { dfn[x]=++cnt;low[x]=cnt; vi[x]=1; stack[++top]=x; for(rint i=f(x);i;i=n(i)) if(!dfn[v(i)])tarjan(v(i)),low[x]=min(low[x],low[v(i)]); else if(vi[v(...
阅读全文
posted @ 2019-07-12 17:05
Al_Ca
阅读(148)
推荐(0)
摘要:
某次考试因为不会写板子,自己造出来的,所以有点丑……
阅读全文
posted @ 2019-07-12 17:04
Al_Ca
阅读(124)
推荐(0)
摘要:
int getf(int x){return (f[x]==x)?x:f[x]=getf(f[x]);} void hb(int x,int y){x=getf(x),y=getf(y),f[y]=x;} inline void add(int u,int v,int w,int c); int kruskal() { int num=0;ans=0; for(int i=0;i...
阅读全文
posted @ 2019-07-12 17:02
Al_Ca
阅读(82)
推荐(0)
posted @ 2019-07-12 06:25
Al_Ca
阅读(5)
推荐(0)
摘要:
[HAOI2010]软件安装 开始没有看懂题,以为就是个树形依赖背包,打完之后W40,然后才发现它会有还,要用tarjan缩完点后跑背包,要建立一个虚拟节点0连接所有的子图(注意连接的位置)。 但是有个细节卡了我好长时间: 错误示范: 正确代码: 在缩点是记录每个scc的入度,0直接和入度为0的sc
阅读全文
posted @ 2019-07-12 06:22
Al_Ca
阅读(196)
推荐(0)
摘要:
「HNOI2015」菜肴制作 这道题想到了其实还挺水的,一开始我直接用小根堆拓扑然后就爆0了,然后我又用十万个堆搜索,T30,还是xkl告诉我要倒着拓扑。 首先要建反图,对于入度为0的点,较小的点先输出所以要优先拓扑大的点,这样就保证了大的点及其子树(其实并不是树,这样好理解点)都存在数组前面,再倒
阅读全文
posted @ 2019-07-12 06:13
Al_Ca
阅读(262)
推荐(0)
posted @ 2019-07-12 06:04
Al_Ca
阅读(2)
推荐(0)
摘要:
B. 矩阵游戏 题目描述 B. 矩阵游戏 B. 矩阵游戏 小Q是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏——矩阵游戏。矩阵游戏在一个N*N黑白方阵进行(如同国际象棋一般,只是颜色是随意的)。每次可以对该矩阵进行两种操作:行交换操作:选择矩阵的任意两行,交换这两行(即交换对应格子
阅读全文
posted @ 2019-07-11 21:23
Al_Ca
阅读(179)
推荐(0)
摘要:
#2691. 「POI2012」约会 Rendezvous 这题我简直不想说什么了,什么素质,卡常数…… “每个顶点有且仅有一条出边”,所以是一道基环树的题,首先tarjan缩点,在缩完点后的图上求a,b的LCA,如果LCA在环内,求出a,b分别对应环中的哪一个点,显然这两个点中的一个为最优解。 我
阅读全文
posted @ 2019-07-11 21:18
Al_Ca
阅读(168)
推荐(0)
摘要:
#2567. 「APIO2016」划艇 #2567. 「APIO2016」划艇 #2567. 「APIO2016」划艇 #2567. 「APIO2016」划艇 题目描述 在首尔城中,汉江横贯东西。在汉江的北岸,从西向东星星点点地分布着 个划艇学校,编号依次为 到 。每个学校都拥有若干艘划艇。同一所学
阅读全文
posted @ 2019-07-11 07:22
Al_Ca
阅读(388)
推荐(1)
摘要:
C. 放棋子 C. 放棋子 C. 放棋子 题目描述 输入格式 输入第一行为两个整数n, m, c,即行数、列数和棋子的颜色数。第二行包含c个正整数,即每个颜色的棋子数。所有颜色的棋子总数保证不超过nm。N,M<=30 C<=10 总棋子数有大于250的情况 输出格式 输出仅一行,即方案总数除以 1,
阅读全文
posted @ 2019-07-10 21:37
Al_Ca
阅读(137)
推荐(0)
摘要:
A. 排序 题目描述 A. 排序 A. 排序 题目描述 输入格式 输出格式 一行,一个整数,表示可以将数组A从小到大排序的不同的操作序列的个数。 样例 样例输入 3 7 8 5 6 1 2 4 3 样例输出 6 数据范围与提示 对于30%的数据,1<=N<=4; 对于全部的数据,1<=N<=12。
阅读全文
posted @ 2019-07-10 21:09
Al_Ca
阅读(142)
推荐(0)
摘要:
#570. [bzoj2242] [SDOI2011]计算器 #570. [bzoj2242] [SDOI2011]计算器 #570. [bzoj2242] [SDOI2011]计算器 题目描述 你被要求设计一个计算器完成以下三项任务:1、给定y,z,p,计算Y^Z Mod P 的值;2、给定y,z
阅读全文
posted @ 2019-07-05 12:01
Al_Ca
阅读(163)
推荐(0)
摘要:
用Hash会更快,map会多个log。 ax≡b (mod p) 令x=i*m-j,其中m=ceil(sqrt(p)); ai*m-j≡b (mod p) ai*m≡b*aj (mod p) 枚举j (0<=j<=m),map[ b*aj ]=j, 若a=0,b!=0,则无解,a=0,b=0,则x=
阅读全文
posted @ 2019-07-05 11:52
Al_Ca
阅读(193)
推荐(0)
摘要:
E. 虔诚的墓主人 E. 虔诚的墓主人 E. 虔诚的墓主人 题目描述 小W 是一片新造公墓的管理人。公墓可以看成一块N×M 的矩形,矩形的每个格点,要么种着一棵常青树,要么是一块还没有归属的墓地。当地的居民都是非常虔诚的基督徒,他们愿意提前为自己找一块合适墓地。为了体现自己对主的真诚,他们希望自己的
阅读全文
posted @ 2019-07-05 06:28
Al_Ca
阅读(174)
推荐(0)
摘要:
因为做题要用,才发现自己线性筛也不会了orz,吃枣药丸……
阅读全文
posted @ 2019-07-02 17:09
Al_Ca
阅读(130)
推荐(0)
摘要:
F. 地精部落 F. 地精部落 F. 地精部落 题目描述 传说很久以前,大地上居住着一种神秘的生物:地精。 地精喜欢住在连绵不绝的山脉中。具体地说,一座长度为 N 的山脉 H可分 为从左到右的 N 段,每段有一个独一无二的高度 Hi,其中Hi是1到N 之间的正 整数。 如果一段山脉比所有与它相邻的山
阅读全文
posted @ 2019-07-02 14:36
Al_Ca
阅读(187)
推荐(2)
摘要:
I. Strange Way to Express Integers I. Strange Way to Express Integers I. Strange Way to Express Integers 题目描述 原题来自:POJ 2891 给定 2n2n2n 个正整数 a1,a2,⋯,ana
阅读全文
posted @ 2019-06-30 18:57
Al_Ca
阅读(301)
推荐(0)
摘要:
C. 集合计数 C. 集合计数 C. 集合计数 题目描述 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得它们的交集的元素个数为K,求取法的方案数,答案模1000000007。(是质数喔~) 题目描述 一个有N个元素的集合有2^N个不同子集(
阅读全文
posted @ 2019-06-30 17:12
Al_Ca
阅读(267)
推荐(3)
摘要:
不知道为啥,用快速幂求逆元就挂了…
阅读全文
posted @ 2019-06-28 11:55
Al_Ca
阅读(177)
推荐(0)
摘要:
B. Perm 排列计数 B. Perm 排列计数 B. Perm 排列计数 题目描述 称一个1,2,...,N的排列P1,P2...,Pn是Magic的,当且仅当2<=i<=N时,Pi>Pi/2. 计算1,2,...N的排列中有多少是Magic的,答案可能很大,只能输出模P以后的值 题目描述 称一
阅读全文
posted @ 2019-06-28 11:28
Al_Ca
阅读(171)
推荐(0)
摘要:
inv(a,p)=pow(a,p-2)%p;GCD(a,p)=1;
阅读全文
posted @ 2019-06-28 11:04
Al_Ca
阅读(162)
推荐(0)
摘要:
B. 数颜色 B. 数颜色 B. 数颜色 题目描述 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问。墨墨会像你发布如下指令:1、 Q L R代表询问你从第L支画笔到第R支画笔中共有几种不同颜色的画笔。2、 R P Col 把第P支画笔替换为颜色Col。为了满足墨墨
阅读全文
posted @ 2019-06-25 14:01
Al_Ca
阅读(230)
推荐(0)
摘要:
E. 最短母串 E. 最短母串 E. 最短母串 题目描述 原题来自:HNOI 2006 给定 n 个字符串 S1,S2,⋯,Sn1,S2,⋯,Sn,要求找到一个最短的字符串 TTT,使得这 nnn 个字符串都是 TTT 的子串。 题目描述 原题来自:HNOI 2006 给定 n 个
阅读全文
posted @ 2019-06-23 17:17
Al_Ca
阅读(222)
推荐(0)
摘要:
D. 病毒 D. 病毒 D. 病毒 题目描述 原题来自:POI 2000 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码。如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的。现在委员会已经找出了所有的病毒代码段,试问,是否存在一个无限长的安全的二进制代码。
阅读全文
posted @ 2019-06-20 09:44
Al_Ca
阅读(181)
推荐(0)
摘要:
B. 记忆的轮廓 B. 记忆的轮廓 B. 记忆的轮廓 题目描述 通往贤者之塔的路上,有许多的危机。我们可以把这个地形看做是一颗树,根节点编号为1,目标节点编号为n,其中1-n的简单路径上,编号依次递增,在[1,n]中,一共有n个节点。我们把编号在[1,n]的叫做正确节点,[n+1,m]的叫做错误节点
阅读全文
posted @ 2019-06-19 15:25
Al_Ca
阅读(491)
推荐(1)
posted @ 2019-06-18 17:12
Al_Ca
阅读(5)
推荐(0)
摘要:
C. 雨天的尾巴 C. 雨天的尾巴 C. 雨天的尾巴 题目描述 N个点,形成一个树状结构。有M次发放,每次选择两个点x,y对于x到y的路径上(含x,y)每个点发一袋Z类型的物品。完成所有发放后,每个点存放最多的是哪种物品。 题目描述 N个点,形成一个树状结构。有M次发放,每次选择两个点x,y对于x到
阅读全文
posted @ 2019-06-18 16:27
Al_Ca
阅读(166)
推荐(0)
摘要:
A. Censoring A. Censoring A. Censoring 题目描述 Farmer John has purchased a subscription to Good Hooveskeeping magazine for his cows, so they have plenty
阅读全文
posted @ 2019-06-14 20:22
Al_Ca
阅读(154)
推荐(0)
摘要:
做了某题之后发现trie的AC自动机太垃圾了,动不动就TLE,然后我就去学了trie图。 #include<iostream> #include<cstdio> using namespace std; struct trie { int count; trie *fail,*nxt[26]; tr
阅读全文
posted @ 2019-06-14 20:08
Al_Ca
阅读(120)
推荐(0)
posted @ 2019-06-14 18:44
Al_Ca
阅读(11)
推荐(0)
摘要:
梦想是否无聊并不是别人来决定的,不管是什么样的梦想,自己拼命努力去追寻才是最重要的。 ——守护甜心
阅读全文
posted @ 2019-06-14 17:20
Al_Ca
阅读(372)
推荐(5)
摘要:
这个有点复杂,按理应该写写的……下次再说吧 #include<iostream> #include<cstdio> #include<algorithm> using namespace std; struct node { int l,r,sum; #define l(x) tr[x].l #de
阅读全文
posted @ 2019-06-14 12:12
Al_Ca
阅读(194)
推荐(0)
摘要:
#include<iostream> #include<cstdio> #include<algorithm> using namespace std; struct node { int l,r,sum; #define l(x) tr[x].l #define r(x) tr[x].r #def
阅读全文
posted @ 2019-06-14 12:11
Al_Ca
阅读(133)
推荐(0)
摘要:
C. 单词 C. 单词 C. 单词 题目描述 原题来自:TJOI 2013 某人读论文,一篇论文是由许多单词组成。但他发现一个单词会在论文中出现很多次,现在想知道每个单词分别在论文中出现多少次。 题目描述 原题来自:TJOI 2013 某人读论文,一篇论文是由许多单词组成。但他发现一个单词会在论文中
阅读全文
posted @ 2019-06-14 09:37
Al_Ca
阅读(186)
推荐(1)
posted @ 2019-06-14 07:04
Al_Ca
阅读(13)
推荐(0)
摘要:
1 #include 2 #include 3 #include 4 using namespace std; 5 struct trie 6 { 7 int count; 8 trie *next[26],*fail; 9 }*q[5000000]; 10 int head,tail; 11 char keyword[55]; 12 c...
阅读全文
posted @ 2019-06-13 20:08
Al_Ca
阅读(120)
推荐(1)
摘要:
1 #include 2 #include 3 #include 4 #define INF 0x7fffffff 5 using namespace std ; 6 struct treap 7 { 8 int l,r,val,dat,cnt,size; 9 #define l(x) tr[x].l 10 #define r(x) ...
阅读全文
posted @ 2019-06-13 17:43
Al_Ca
阅读(127)
推荐(0)
摘要:
真的是个神题,蒟蒻表示无力吐槽。刚开始以为是一个板子题,看着题解打了一遍,大概也理解了他是怎么实现的,然后我就去做别的题了,然后就在Three_D大佬的询问下蒙*了。最后还是问的nc哥,并思考了一个中午才搞明白。最主要的一点是,旋转不会改变树的中序遍历。 【建树操作】 对于一棵BST,区间[l,r]
阅读全文
posted @ 2019-06-13 17:21
Al_Ca
阅读(282)
推荐(2)