题目大意给出一个序列,求[l, r]中的最大连续xor xor和。
强制在线思路先把整个序列分成n √ \sqrt{n}块,预处理每一块的开头到每个数字的最大连续xor xor和。这个我们只需处理出前缀xor xor和,之后用可持久化Trie树就可以搞定。这样询问的右边就是整块的了。剩下左边的随便暴力一下就能过了。。CODE#define _CRT_SECURE_NO_WARNINGS#inc...
分类:
其他好文 时间:
2015-03-17 22:00:38
阅读次数:
179
转自: http://www.cnblogs.com/ltang/archive/2010/11/25/1887573.html解题思路: 建立trie图,我们可以假设起点均为root节点,题目转化为求解root经过m步到达所有节点的总和 dp求解,如果存在i->j的路径,counter[m, .....
分类:
其他好文 时间:
2015-03-17 14:02:14
阅读次数:
141
题目链接题目描述 有n个电话号码,长度对多为10个,问存不存在一个电话号码是另一个的前缀,是就输出NO,否则YES。
1. n<10410^4
思路 Trie树裸题
1. 把所有字符串插入Trie树
2. 插入时进行以下判断:
a. 当前插入的字符串可以沿着Tries树中的某条路径一直往下走,不用新开节点:可能比这条路径表示的字符串长,即最后才新开节...
分类:
其他好文 时间:
2015-03-15 12:27:31
阅读次数:
178
题目:给你一组电话号码,判断是否有一些号码是其他的前缀(或相等)。
分析:字符串,字典树。利用字典树储存查询即可,注意两种情况处理:
1.先短后长(前缀在前);2.先长后短(前缀在后)。
说明:第580题了,目标600╮(╯▽╰)╭。
#include
#include
#include
#include
#include
#include
using...
分类:
其他好文 时间:
2015-03-15 10:58:51
阅读次数:
150
整理一下思路,明天再写。。。#include #include #define LL __int64using namespace std;const LL inf=10000000000000ll;const int root=0;LL f[60],ans[60];int trie[550][10...
分类:
其他好文 时间:
2015-03-15 00:39:42
阅读次数:
150
Problem Description
A hat’s word is a word in the dictionary that is the concatenation of exactly two other words in the dictionary.
You are to find all the hat’s words in a dictionary.
Input
Standard input consists of a number of lowercase words, one p...
分类:
其他好文 时间:
2015-03-14 18:42:53
阅读次数:
141
题意:给定N个字符串,让你依次先输入到手机的字典中,再打印出来,打印的时候我们只需要输出字符串的前缀或者全部字符串,要求此前缀不是以往任何字符串的前缀。
题解:典型的字典树,可以利用结构体数组方便的新建与查询,速度比链表更快。只需在插入字符串时统计最长相同的前缀即可。代码如下:#include
#include
#include
using...
分类:
其他好文 时间:
2015-03-14 18:38:24
阅读次数:
159
ac自动机中,如果以trie中的节点为节点,(fail[i],i)为边,可以建立一颗树,该树有如下特点:“节点u是节点v的祖先 当且仅当 u代表的字符串是v代表的字符串的一个后缀”。(u代表的字符串是由根节点到u路径上所有的边代表的字符顺次组合成的,我们记作str(u))。本题中的每一个P都对应tr...
分类:
其他好文 时间:
2015-03-14 16:50:49
阅读次数:
150
题目:给你一个小写字母组成大的串和一个整数n,找到里面长度为n出现最频繁的子串。
分析:字符串、hash表、字典树。这里使用hash函数求解,只做一次扫描即可。
说明:如果频率相同输出字典序最小的。
#include
#include
#include
#include
char subs[15],buf[1000001];
char *strsub(char *str, int ...
分类:
其他好文 时间:
2015-03-13 18:46:34
阅读次数:
151
在计算机科学中,trie,又称前缀树或字典树,是一种有种树,用于保存关联数组,其中的键通常是字符串。与二叉查找树不同,键不是直接保存在节点中,而是由节点在树中的位置决定。一个节点的所有子孙都有相同的前缀,也就是这个节点对应的字符串,而根节点对应空字符串。一般情况下,不是所有的节点都有对应的值,只.....
分类:
其他好文 时间:
2015-03-13 17:57:42
阅读次数:
106