04 2018 档案

摘要:"Codeforces 437D The Child and Zoo" 题目大意: 有一张连通图,每个点有对应的值。定义从p点走向q点的其中一条路径的花费为途径点的最小值。定义f(p,q)为从点p走向点q的所有路径中的最大花费。累加每一对p,q的f(p,q),并求平均值。 乍一看以为是对图的搜索,但 阅读全文
posted @ 2018-04-30 00:52 __orange 阅读(128) 评论(0) 推荐(0)
摘要:"题目链接" 大意是判断所给字符串组中是否存在与查询串仅一字符之差的字符串。 关于字符串查询的题,可以用 "字典树(Trie树)" 来解,第一次接触,做个小记。在查询时按题目要求进行查询。 代码: C++ define _CRT_SECURE_NO_DEPRECATE include include 阅读全文
posted @ 2018-04-23 03:42 __orange 阅读(205) 评论(0) 推荐(0)
摘要:字典树Trie Trie树,又称为前缀树(Prefix Tree)、单词查找树或键树,是一种多叉树结构。 性质 ①根节点不包含字符,除根节点外的每一个子节点都包含一个字符。 ②从根节点到某一个节点,路径上经过的字符连接起来,为该节点对应的字符串。 ③每个节点的所有子节点包含的字符互不相同。 PS:通 阅读全文
posted @ 2018-04-23 03:33 __orange 阅读(189) 评论(0) 推荐(0)
摘要:"题目链接" 非常简单的一道dp题,通过O(n)的预处理来使查询变为O(1)。 主要的坑在于取模后的dp数组的前缀和再相减可能得到负数,导致无法得到某一区间和的取模。 解决方法:(a b)%mo==(a%mo+mo b%mo)%mo,由于该等式的存在,可以使用取模后的前缀和做运算得到某一区间和的取模 阅读全文
posted @ 2018-04-14 10:12 __orange 阅读(222) 评论(0) 推荐(0)
摘要:树状数组 树状数组是在线段树的结构上改造而来数据结构,主要用于完成: 给定一个初始值全为0的数列 ①给定i,计算返回a1+a2+……+ai的值 ②给定i和x,执行ai+=x BIT的求和 BIT的值更新 C++ void add(int i, int x) { while (i 阅读全文
posted @ 2018-04-09 01:19 __orange 阅读(201) 评论(0) 推荐(0)
摘要:并查集 之前对并查集一直不太熟悉,这次做题遇到了,就做一个简单记录 并查集是什么 并查集是一种管理元素分组的数据结构,可以①查询两个元素是否属于同一组,也可以②合并两个元素所属组。为树形结构,但不是二叉树 并查集基本功能的实现 C++ int par[maxn]; //父亲 int rk[maxn] 阅读全文
posted @ 2018-04-01 14:13 __orange 阅读(157) 评论(0) 推荐(0)