![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
字符串
小白菜又菜
这个作者很懒,什么都没留下…
展开
-
Leetcode 443. String Compression
【代码】Leetcode 443. String Compression。原创 2024-08-22 20:53:20 · 347 阅读 · 0 评论 -
Leetcode 2000. Reverse Prefix of Word
【代码】Leetcode 2000. Reverse Prefix of Word。原创 2024-05-01 20:08:50 · 747 阅读 · 0 评论 -
Leetcode 139. Word Break
ProblemGiven a string s and a dictionary of strings wordDict, return true if s can be segmented into a space-separated sequence of one or more dictionary words.Note that the same word in the dictionary may be reused multiple times in the segmentation.Al原创 2022-02-28 13:47:18 · 175 阅读 · 0 评论 -
UVa 10815 - Andy's First Dictionary
题目:统计单词。分析:字符串处理、字典树。比较裸的字典树,建树输出即可。注意:库iostream中没有gets。万恶的CE,╮(╯▽╰)╭。#include #include #include #include using namespace std;//Trietypedef struct node1{ bool flag; node1 *next[26原创 2013-10-10 17:56:12 · 1825 阅读 · 0 评论 -
UVa 10075 - Airlines
题目:给出地球上一些点的经度和纬度,以及地点之间是否直达的航班,然后询问两地间最短的行程。分析:计算几何、最短路、字符串、hash。 首先,利用hash建立地名(单词)和编号的映射; 然后,将大地坐标转换,求出有直达航班地点之间的球面最短距离; d = r*sqrt(2-2*(cos(lat1)*cos(lat2)*原创 2013-10-14 06:38:02 · 19665 阅读 · 0 评论 -
UVa 10975 - Dueue's Quiz
题目:给你一些单词组成一个字典,然后再给你一个由字母组成的矩阵,连接横、竖和斜线可以组成单词。 统计字典中,每个单词出现的次数。分析:字符串、字典树(Trie)、AC自动机。单词统计问题,一定想到字典树和AC自动机。 首先,将字典存入字典树(可以在字典树上构造AC自动机,加快查询) 然后,枚举每条直线上的单词查询计数原创 2014-04-13 20:23:05 · 4509 阅读 · 0 评论 -
UVa 446 - Kibbles "n" Bits "n" Bits "n" Bits
题目:给你两个十六进制数字,biatai分析:注意:负数原创 2014-05-04 15:28:12 · 2092 阅读 · 0 评论 -
UVa 10033 - Interpreter
题目:给你一些指令,ra分析:原创 2014-05-20 23:03:25 · 1093 阅读 · 0 评论 -
UVa 10789 - Prime Frequency
题目:给你一个字符串,统计里面哥哥字符原创 2014-05-23 08:34:41 · 1373 阅读 · 0 评论 -
UVa 10194 - Football (aka Soccer)
题目:给你一些球队的比赛记录,对球队的成绩jinxin原创 2014-06-27 02:24:42 · 901 阅读 · 0 评论 -
UVa 10070 - Leap Year or Not Leap Year and ...
题目:判断一年是不是闰年,huluculu以及buluculu原创 2014-06-27 09:20:16 · 932 阅读 · 0 评论 -
UVa 10391 - Compound Words
题目:给你一些小写字母构成的单词,输出其中可以拆成两个单词的单词。原创 2014-05-23 10:36:13 · 759 阅读 · 0 评论 -
UVa 11192 - Group Reverse
题目:给你一个字符串,把它分成n段,分别f转原创 2014-06-26 22:36:13 · 1228 阅读 · 0 评论 -
UVa 11488 - Hyper Prefix Sets
题目:给你一些01串,某个前缀的pg为:此前缀长度*拥有此前缀的串的数量。求最大的pg值。分析:字符串,字典树。 首先,现将字符排序(按长度),短的才可能成为长的前缀。 然后,按照长度的顺序插入到字典树。每个插入的字符进行统计,并记录深度。 最后,枚举所有节点,计算出最大的pg值即可。说明:注意数组的大小,字典树原创 2014-05-25 23:21:18 · 1502 阅读 · 0 评论 -
UVa 12333 - Revenge of Fibonacci
题目:给你一个数字串,判断他是哪一个Fib数的前缀,有多种答案输出最小的,不存在输出-1。分析:字符串,大整数。 首先,利用大整数计算Fib的前100000项,由于数据较大,只储存前50位即可。 然后,按Fib的顺序存入字典树,利用滚动数组一边生成一边存储,可以减少内存开销。 在存的过程中直接原创 2014-05-26 09:44:52 · 3915 阅读 · 16 评论 -
UVa 698 - Index
题目:给你一些单词(数字和字母构成),再给你几行文章,要求建立单词所在行数的索引。分析:字符串、字典树。这题好恶心,数据范围完全没有╮(╯▽╰)╭,57次提交才AC。 数据分为单词表和文章两部分,每部分由一个空行做结束标志。 首先,将单词中的小写字母全部转化成大写字母,然后存入字典树。 然后,查找时将文章中所有的小写原创 2014-05-29 00:29:17 · 1217 阅读 · 0 评论 -
UVa 11732 - strcmp() Anyone?
#include #include #include #include using namespace std;typedef long long LL;char words[1010];/* Trie define */ #define nodesize 4444444 //节点个数 typedef struct node1 { char va原创 2014-05-28 01:19:28 · 2892 阅读 · 0 评论 -
UVa 409 - Excuses, Excuses!
题目:分析:说明:原创 2014-06-13 01:19:11 · 622 阅读 · 0 评论 -
UVa 537 - Artificial Intelligence?
题目:再一句话里面有P,I,U中的2个已知量,求第三个未知量。(P=I*U)分析:字符串。利用'='定位已知量,然后将'='后面的的数字和单位分别读入处理。说明:注意单位有m(10^-3),k(10^3),M(10^6)的前缀,以及小数点的处理。#include #include #include #include using namespace std;char Sat原创 2014-06-13 01:09:15 · 989 阅读 · 0 评论 -
UVa 10115 - Automatic Editing
题目:给你一些字符串的替换关系,以及一个句子。按顺序替换,输出最后结果。分析:字符串。按照替换顺序依次替换(这个替换用过之后,就不再使用),每个替换可能出现多次。 这里注意,如果当前串中有多个可被当前单词替换的位置,只替换最前面的那个, 下次用本次生成的串替换,而不是整体一次性替换。说明:注意数据清空。#include #inclu原创 2014-06-13 10:26:09 · 981 阅读 · 0 评论 -
UVa 10745 - Dominant Strings
题目:给你一些字符串,问哪些字符串不是其他字符串的子集,字符串的集合为字母组成的重集。分析:字符串,dancing-links。Knuth有一篇关于dancing-links的论文,讲述关于搜索的优化。 在搜索时,将所有的状态建立一个链表,表之间的状态建立相互关系。 每次搜索时,进行剪枝,将不成立的节点从链表中删掉,回溯时在拼上去。原创 2014-05-29 10:25:08 · 1386 阅读 · 0 评论 -
UVa 11223 - O: dah dah dah!
题目:分析:说明:qitazifu原创 2014-06-12 11:10:18 · 1458 阅读 · 0 评论 -
UVa 490 - Rotating Sentences
题目:给你一篇文章,将文章旋转s90度输出原创 2014-06-13 00:48:22 · 1241 阅读 · 0 评论 -
UVa 644 - Immediate Decodability
题目:给你一些01串,判断是不是某些串是其它串的前缀。分析:字符串,字典树。 首先,将字符串按长度排序,这样前缀一定在前面; 然后,再插入字典树的过程中,判断是否覆盖即可。说明:注意数组的大小。#include #include #include #include using namespace std;char wor原创 2014-06-13 01:14:33 · 1046 阅读 · 0 评论 -
UVa 10010 - Where's Waldorf?
题目:给你一些单词和一个字母矩阵,问这个单词最早出现在哪里(单词可以向8个直线方向书写)。分析:字符串。枚举矩阵中每个字母的8个方向,生成最长字符,然后在里面找单词即可。说明:处理前,将大写字母先转化成小写字母。#include #include #include #include using namespace std;char text[52][52];char w原创 2014-06-13 00:54:01 · 810 阅读 · 0 评论 -
UVa 10361 - Automatic Poetry
题目:给你laing分析:说明:原创 2014-06-13 01:01:28 · 568 阅读 · 0 评论 -
UVa 10679 - I Love Strings!!
题目:给你一个目标串,和一些模式串,问每个模式串是否在目标串中出现。分析:字符串,AC自动机。一开始用KMP算法,TLE了才发现会超时,改用AC自动机; 直接利用AC自动机存储,查询即可,然后按顺序输出; 如果模式串中有重复的,直接利用并查集合并即可,朱旭判断父节点。说明:╮(╯▽╰)╭计算复杂度时,数据组数被忽略了;注意初始化。#i原创 2014-07-04 11:13:19 · 1639 阅读 · 0 评论 -
UVa 465 - Overflow
题目:给你一个计算式(2个操作数,)原创 2014-06-18 08:29:37 · 523 阅读 · 0 评论 -
UVa 748 - Exponentiation
题目:计算大整数的幂运算。分析:模拟。先将小数化成zheng原创 2014-06-18 09:13:49 · 685 阅读 · 0 评论 -
UVa 10494 - If We Were a Child Again
题目:分析:说明:原创 2014-06-18 21:01:24 · 598 阅读 · 0 评论 -
UVa 10945 - Mother bear
题目:回文串判断。分析:字符串原创 2014-06-23 10:58:28 · 708 阅读 · 0 评论 -
UVa 389 - Basically Speaking
题目:分析:说明:#include #include #include using namespace std;char buf[36];int change1( char c ){ if ( c >= '0' && c <= '9' ) return c - '0'; return c - 'A' + 10;}int change2( char c )原创 2014-08-01 16:31:18 · 1593 阅读 · 0 评论 -
hdu 4002 - Find the maximum
题目:求不超过n的最大的x/φ(x),其中φ(x)是欧拉函数。分析:数论,大整数。比赛时直接打表计算的。 实际上:φ(n)= n *(1 - 1/p1)*(1 - 1/p2)*(1 - 1/p3)*…*(1 - 1/pt); 所以有:x/φ(x)= 1 /((1 - 1/p1)*(1 - 1/p2)*(1 - 1/p3)*…*(1 - 1/pt)原创 2014-09-18 17:13:41 · 940 阅读 · 0 评论 -
UVa 485 - Pascal's Triangle of Death
題目:打印Pascal三角到第一个到达10^60的行。分析:字符串、大整數、模擬。f(i,j)= f(i-1,j-1)+ f(i-1,j) {組合數公式}。說明:注意不小于10^60的數字有61位(⊙_⊙)。#include #include #include using namespace std;int P[220][220][70] = {0};int main(原创 2014-09-06 10:45:42 · 2064 阅读 · 0 评论 -
UVa 10298 - Power Strings
题目:求一个串的最大的循环次数。分析:dp,KMP,字符串。这里利用KMP算法。 KMP的next函数是跳跃到最近的串的递归结构位置(串元素取值0 ~ len-1); 由KMP过程可知: 如果存在循环节,则S[0 ~ next[len]-1] 与 S[len-next[len] ~ len-1]相匹配;原创 2014-08-21 22:36:34 · 2357 阅读 · 0 评论 -
UVa 355 - The Bases Are Loaded
题目:进制转换,加上合法判断。分析:数论。先转化成十进制,再转化成对应的进制,输出即可。 base进制转化成十进制:顺序乘以base加和; 十进制转base进制:逆序输出模base的余数。说明:注意值时0的情况。#include #include #include using namespace std;char numb原创 2014-08-25 09:16:01 · 2327 阅读 · 0 评论 -
UVa 10226 - Hardwood Species
题目:有很多不同名称的树,统计每种树出现的概率。分析:字符串,字典树(trie)。直接利用字典树计数,然后排序输出即可。说明:POJ2418没有测试组数,TLE几次才发现╮(╯▽╰)╭。#include #include #include #include #include using namespace std;char words[32];/* Trie de原创 2014-08-28 16:54:11 · 2171 阅读 · 0 评论 -
zoj 2202 - Alphacode
题目:字母A~Z,分别用1~26来表示。现在给你一字符串,比如25114,它可以被翻译为不同的字符串。问题就是求可以被分几种情况。原创 2014-09-19 14:59:58 · 618 阅读 · 0 评论 -
UVa 1509 - Leet
题目:给你一个小写的串,其中mei原创 2014-09-22 23:48:34 · 1100 阅读 · 0 评论 -
UVa 10007 - Count the Trees
题目:统计n个节点的二叉树的个数。分析:组合,计数,卡特兰树原创 2014-09-12 19:47:41 · 2447 阅读 · 0 评论