题目链接:https://cn.vjudge.net/contest/283743#problem/B 题目大意:给你n个字符串,然后问你将这位n个字符串任意两两组合,然后问你这所有的n*n种情况中,是回文串的有多少个? 题目大意:学到了一个很骚气的存储多个零散字符串的方法,因为有可能个给你很多零散的字符串,我们可以将这些字符串存储在一个字符串里面,然后再额外加一个数组记录每一个字符串的开始位置和截止位置就好了. 然后是对于这个题,首先说一下判断字符串的方法,对于每一个字符串我们通过manach…
题意: 给你n个串串,每个串串可以选择和n个字符串拼接(可以自己和自己拼接),问有多少个拼接后的字符串是回文. 所有的串串长度不超过2e6: 题解: 这题由于是在POJ上,所以string也用不了,会tle. 串串个数也比较多,开不下二维的char数组,卡内存. 所以数据的预处理需要处理成一个串串,把所有的串串放在一个串里面. 记录每一个串串的起始位置和长度. 数据预处理部分就解决了. 然后就是核心思想部分了. 首先你要知道如何用EX_KMP求串串前缀和后缀是否是回文.(其实也可以用马拉车) 其…
题目大意:有 N 个字符串,所有的字符串长度不超过 200W 任意俩俩字符串可以自由组合,问组合的字符串是回文串的个数有多少个?   分析:这是一个相当猥琐的字符串处理,因为没有说单个的字符串最少多长,所以很可能会有这样的情况,200w个字符串,每个字符串长度1,或者1个串,这个串的长度是100w, 为了对付这种猥琐的方式可以用一个长为100w的字符串保存所有的串,然后用另一个数组记录每个字符串所在的区间.匹配的时候可以使用trie因为回文串是两端匹配,所以插入trie的时候可以倒着插入,不过查…
题目链接:https://vjudge.net/problem/POJ-3376 Finding Palindromes Time Limit: 10000MS   Memory Limit: 262144K Total Submissions: 4244   Accepted: 796 Case Time Limit: 2000MS Description A word is called a palindrome if we read from right to left is as sam…
Finding Palindromes Time Limit: 10000MS   Memory Limit: 262144K Total Submissions:4710   Accepted: 879 Case Time Limit: 2000MS Description A word is called a palindrome if we read from right to left is as same as we read from left to right. For examp…
The ACM team is working on an AI project called (Eih Eye Three) that allows computers to write poems. One of the problems they stumbled upon is finding words with the same suffix. The ACM team constructed a dictionary of words, They are interested on…
Gym 100935F A Poet Computer Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Description standard input/output The ACM team is working on an AI project called (Eih Eye Three) that allows computers to write poems. One of th…
Trie树.又称字典树,单词查找树或者前缀树,是一种用于高速检索的多叉树结构. Trie树与二叉搜索树不同,键不是直接保存在节点中,而是由节点在树中的位置决定. 一个节点的全部子孙都有同样的前缀(prefix),也就是这个节点相应的字符串,而根节点相应空字符串.普通情况下.不是全部的节点都有相应的值,仅仅有叶子节点和部分内部节点所相应的键才有相关的值. A trie, pronounced "try", is a tree that exploits some structure in…
Finding Palindromes http://poj.org/problem?id=3376 Time Limit: 10000MS   Memory Limit: 262144K       Case Time Limit: 2000MS Description A word is called a palindrome if we read from right to left is as same as we read from left to right. For example…
题目:http://ybt.ssoier.cn:8088/problem_show.php?pid=1472 题目思路:异或是啥呀? 异或就是把两个数字变成位数相同的二进制在同位比较,相同为0,不同为1,如: 011 100 -- 111 所以 3 XOR 4 == 7 那让我们找异或不就是说把一大堆二进制的字符串存起来找嘛 那基本思路就出来了,将数字转变成由 0 和 1组成的字符串,然后找不同 字符串?找不同?那不就是把字典树糊人脸上了嘛 所以这个程序的非主体部分就白给了: 一个是主程序,输入…