摘要: 并查集的英文名理论上是 disjoint set data structure (also called union–find data structure or merge–find set) 。所以说“并查集”这个词的来源,是其第二个和第三个英文名。 确定两个元素属于同一个集合需要Find找出他 阅读全文
posted @ 2019-11-17 14:08 KisekiPurin2019 阅读(239) 评论(0) 推荐(0) 编辑
摘要: A Single Push 题意:给数组a和数组b,可以选择一段连续的区间[l,r]使得ai全部加k(k 0)至多一次。求能不能从a变成b。 题解:一开始作差排序去重,然后判断差是不是只有1个(且 =0)或只有两个(且c1=0,c2 0),但这样是错的,比如下面的样例。 因为虽然差都是1但不是连续的 阅读全文
posted @ 2019-11-17 11:57 KisekiPurin2019 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 跳过了一些困难的题开一场新的。看来2100的题还是要慢慢挑战,不能操之过急。 A Prime Subtraction 题意:给两个数x,y,可以从x中减去任意个相同的质数p,问能不能与y相等。 题解:首先x =y,然后差值不能为1,否则一定可以。 cpp include using namespac 阅读全文
posted @ 2019-11-15 23:19 KisekiPurin2019 阅读(126) 评论(0) 推荐(0) 编辑
摘要: Huffman分治的NTT,常数一般。使用的时候把多项式的系数们放进vector里面,然后调用solve就可以得到它们的乘积。注意这里默认最大长度是1e6,可能需要改变。 阅读全文
posted @ 2019-11-15 17:48 KisekiPurin2019 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 使用静态数组的nxt指针的设计,大概比使用map作为nxt指针的设计要快1倍,但空间花费大概也大1倍。在数据量小的情况下,时间和空间效率都不及map,int 。map,int 的最坏情况下效率为O(nlogn\ len),而Trie的效率为O(n\ len),但是实际上测出来还是map快一点,有可能 阅读全文
posted @ 2019-11-14 16:46 KisekiPurin2019 阅读(136) 评论(0) 推荐(0) 编辑
摘要: A Two Rival Students 题意:共n个人排一排,两个人,位于a,b,相邻位置交换至多x次,最大化abs(a b)的值。 题解:每次交换至多+1,不能超过n 1。 B Magic Stick 题意:给一个数a,有无限次的两种操作:1、若a是偶数,则加上a的一半。2、若a 1,则减去1。 阅读全文
posted @ 2019-11-14 08:50 KisekiPurin2019 阅读(584) 评论(2) 推荐(0) 编辑
摘要: SparseTable,俗称ST表,其功能,就是静态的RMQ(区间最值查询)问题的解决。注意传入查询的时候两个参数的合法性,或者可以进行一次全部初始化来使得越界值不产生负面影响。不过访问越界是写程序的不良习惯,不应该指望进行一次额外的初始化把它消除。再重申一次对任何位置的访问都要保证不越界。有一些加 阅读全文
posted @ 2019-11-14 01:17 KisekiPurin2019 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 这个算法是自己实现的Kosaraju算法,附带一个缩点,其实缩点这个跟Kosaraju算法没有什么关系,应该其他的强连通分量算法计算出每个点所属的强连通分量之后也可以这样缩点。 算法复杂度: Kosaraju算法:初始化,加边,两次dfs,复杂度O(n+m) 强连通分量缩点算法:遍历每个点每条边,复 阅读全文
posted @ 2019-11-14 01:03 KisekiPurin2019 阅读(195) 评论(0) 推荐(0) 编辑
摘要: A Stones 题意:有3堆石头a个,b个,c个,可以每次拿1个a堆的,2个b堆的,或者拿1个b堆的,2个c堆的。 题解:b堆是唯一的公共资源,考虑尽可能充分利用b堆。每2个b堆的参与操作2可以得6个,参与操作1只能得3个,而且参与操作2只需要b堆还剩下一个就可以执行,所以先做操作2。 B Ali 阅读全文
posted @ 2019-11-13 20:51 KisekiPurin2019 阅读(121) 评论(0) 推荐(0) 编辑
摘要: ##算法基础 输入输出 数组处理 归并排序 离线询问 ##动态规划 最长上升子序列 数位dp ##字符串 [哈希 / Hashing] 字典树 / Trie KMP算法 Manacher算法 回文自动机 / Palindromic Automaton ##数学 ###数论 数论常识 扩展Euler定 阅读全文
posted @ 2019-11-12 16:56 KisekiPurin2019 阅读(366) 评论(0) 推荐(0) 编辑