trie
WorldWide_D
这个作者很懒,什么都没留下…
展开
-
51Nod 1295 (XOR key)
题目大意给出一个长度为N的正整数数组A,再给出Q个查询,每个查询包括3个数,L, R, X (L <= R)。求A[L] 至 A[R] 这R - L + 1个数中,与X 进行异或运算(Xor),得到的最大值是多少?Input第1行:2个数N, Q中间用空格分隔,分别表示数组的长度及查询的数量(1 <= N <= 50000, 1 <= Q <= 50000)。 第2 - N+1行:每行1个数,对应原创 2016-06-30 16:22:26 · 889 阅读 · 0 评论 -
【TJOI2013】单词
Description小张最近在忙毕业设计,所以一直在读论文。一篇论文是由许多单词组成的。 但小张发现一个单词会在论文中出现很多次,他想知道每个单词分别在论文中出现了多少次。Input第一行一个整数N,表示有N个单词。接下来N行每行一个单词,每个单词都由小写字母(‘a’-‘z’)组成。(N<=200)Output输出N个整数,第i行的数表示第i个单词在文章中出现了多少次。Sample Input3原创 2016-07-04 11:47:59 · 564 阅读 · 0 评论 -
[Scoi2016]背单词
做的时候题意理解错了,然后爆0。。题目大意给你n个两两不同字符串,把它们按任意顺序排列。对于排列中的第i个字符串: 1. 如果存在一个字符串是它的后缀,并且不在它前面,那么费用增加n*n 2. 如果它的前面不存在一个是它的后缀,那么费用增加i 3. 如果前面存在一个是它的后缀,那么费用增加i-j(j是前面所有它的后缀中,最后的位置)数据范围n≤100000 字符串总长≤510000分析后缀比原创 2016-07-15 18:33:53 · 688 阅读 · 0 评论 -
[51nod1647]小Z的trie
Description小Z打算去冲击省选,于是开始学习trie。 有一天,他得到了N个字符串。 他先建立一个根节点,对于每一个字符串,他都从根节点开始一点点插入。 小Z不满足于此。他的大脑里盘旋着M个问题: 如果给定一个二元组(s,t)(s,t都是trie中的节点且s是t的祖先), 存在多少个二元组(x,y)(x,y都是trie中的节点且x是y的祖先), 满足s~t路径上的字符串和原创 2016-07-18 20:36:56 · 686 阅读 · 0 评论 -
[51nod1150] Logarithm
题目大意给定一个n个正整数的数组A[],求∑i≠jlg(A[i]xorA[j])\sum_{i≠j} lg(A[i]xorA[j])n≤50000 1≤A[i]≤101810^18分析首先每个数不会很大,那么任意一个异或起来的数的lg值不会超过18 然后可以考虑lg的值,假设是x,然后可以确定一个区间[10x,10x+1)[10^x,10^{x+1}),如果异或值在这个区间内,它对答案的贡献就是原创 2016-12-16 22:21:18 · 429 阅读 · 0 评论 -
[codeforces840E] In a Trap
题目大意有一个n个节点的有根树,边权为1,点权给定,第i个点的点权是ai。q次询问,每次给定u,v,并保证u是v的祖先。问对于u到v路径上的所有i(包括u,v),最大的ai xor dist(i,v)。其中dist(i,v)是i到v的距离n≤50000 0≤ai≤n q≤150000分析这题的做法很有趣。 我们把v到u的路径每256个节点分成一段(最后一段可能不够256个,可以单独枚举原创 2017-12-27 15:13:23 · 563 阅读 · 0 评论