随笔分类 -  字符串

摘要:LeetCode 1446 连续字符解题思考 一、题目描述: 给你一个字符串 s ,字符串的「能量」定义为:只包含一种字符的最长非空子字符串的长度。请你返回字符串的能量。 示例 1: 输入:s = "leetcode" 输出:2 解释:子字符串 "ee" 长度为 2 ,只包含字符 'e' 。 示例 阅读全文
posted @ 2022-02-20 18:49 windysai 阅读(89) 评论(0) 推荐(0)
摘要:KMP算法模板题 (选自hiho一下 第三周的题目: http://hihocoder.com/contest/hiho3/problem/1) 输入 第一行一个整数N,表示测试数据组数。 接下来的N*2行,每两行表示一个测试数据。在每一个测试数据中,第一行为模式串,由不超过10^4个大写字母组成, 阅读全文
posted @ 2017-06-02 11:00 windysai 阅读(185) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/problemset/problem/518/B题目意思:给出字符串 s 和 t,如果 t 中有跟 s 完全相同的字母,数量等于或者多过 s,就将 s 这个数量加到 YAY! 的答案里,少于的话就加t 中有的数量;如果 t 中有跟 s 相同的字母... 阅读全文
posted @ 2015-02-26 12:45 windysai 阅读(321) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/problemset/problem/499/B题目意思:给出两种语言下 m 个单词表(word1, word2)的一一对应,以及 professor's lecture 的 n 个单词。问记下来的笔记是什么。对于professor's lect... 阅读全文
posted @ 2014-12-26 23:41 windysai 阅读(211) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/problemset/problem/448/B题目意思:给出两种操作automaton:可以删除字符串中任意一个字符; array:交换字符串中任意两位。运用这两种操作的次数不限定,问如何运用这两种操作(或其中一种,或两种结合都不能够)使得字符... 阅读全文
posted @ 2014-07-18 11:35 windysai 阅读(301) 评论(0) 推荐(0)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2112题目意思:又是求最短路的,不过结合埋字符串来考查。 受之前1004 Let the Balloon Rise 学到用map 的解法做之后,有点蠢蠢欲动,当时见到要用字典树做有点吓坏了(之前看过下,... 阅读全文
posted @ 2014-05-20 22:20 windysai 阅读(179) 评论(0) 推荐(0)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1711题目意思:给出一条有n个数的序列a[1],a[2],......,a[n],和一条有m 个数的序列b[1],b[2],......,b[m],求出b[1],b[2],...,b[m]在序列a中完全匹... 阅读全文
posted @ 2014-05-09 00:06 windysai 阅读(192) 评论(0) 推荐(0)
摘要:题目描述: Integer in C++Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 128000/64000 KB (Java/Others)SubmitStatistic Next ProblemProblem Description KIDx: I like Java much more than C++, because I can use BigInteger in Java. :)However, KIDx has to use C++ language to do a project...Li... 阅读全文
posted @ 2014-03-30 11:47 windysai 阅读(209) 评论(0) 推荐(0)
摘要:题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=342题目意思:判断一行字符串为以下四种的哪一种:A regular palindrome,A mirrored string,A mirrored palindrome 和is not a palindrome。A regular palindrome 就是我们见得最多的普通回文字符串,正读和反读是一样的;A mirrored string 就是根据以下的一套规则,将每个 阅读全文
posted @ 2014-03-29 19:19 windysai 阅读(233) 评论(0) 推荐(0)
摘要:题目描述: IP Checking Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 128000/64000 KB (Java/Others)Problem DescriptionAn IP address is a 32 bit address formatted in the following way:a.b.c.dwhere a, b, c, d are integers each ranging from 0 to 255. Now you are given two IP... 阅读全文
posted @ 2014-03-04 23:02 windysai 阅读(197) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/problemset/problem/147/A题目意思:给定一篇文章,需要对这篇文章进行编辑,使得:(1)两个单词之间有一个空格分开 (2)标点符号前面(, . ! ?)没有空格,即单词后面直接紧跟着这个标点 (3)标点符号后面只有一个空格。 恶心的字符串处理。特别要注意,当出现类似 wery , weyriu 的形式时的处理方法。由于对于标点符号的处理,我是把该符号+空格输出,所以对于这种情况,再把空格都过滤了的情况下,仅当紧跟着空格后面的那个字符不能为标点符号而是小写字母并且该空格前面有一个空格的时候,才输出空白符。 1 #inclu 阅读全文
posted @ 2014-01-25 12:20 windysai 阅读(260) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/problemset/problem/358/B题目意思:给出n个单词(假设为word1,word2、word3...wordn)和一句test message,需要判断的是,这个 test message在去除一系列随机插入的英文字符后,是否满足 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int maxin = 1e5 + 10; 8 const int maxsave = 1e6 + 10; 9 char a[maxin], b[maxin... 阅读全文
posted @ 2013-11-08 20:59 windysai 阅读(327) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=1007 本题属于字符串排序问题。思路很简单,把每行的字符串和该行字符串统计出的字母逆序的总和看成一个结构体。最后把全部行按照这个总和从小到大排序即可。 1 #include 2 #include 3 using namespace std; 4 5 struct DNA 6 { 7 char s[100]; 8 int count; 9 } d[100];10 11 int cmp(DNA a, DNA b)12 {13 return a.count > n >> m)20 {21 ... 阅读全文
posted @ 2013-08-09 21:22 windysai 阅读(215) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=3080该题属于字符串处理中的串模式匹配问题。题目要求我们:给出一个DNA碱基序列,输出最长的相同的碱基子序列。(保证在所有的序列中都有出现) 这里采用了Brute Force算法(由于碱基序列的串长仅为60,规模比较小),这是模式匹配的一种最简单的做法。 设: 最长公共字串为ans,其长度为maxlen。 m个碱基序列为p[0]...p[m-1]。由于公共子序列是每个碱基序列的子串,因此不妨枚举p[0]的每一个可能的子串s。以s为模式,分别以p[1]...p[m-1]为目标进行匹配计算: 若s为p[1]...p[m-1]的... 阅读全文
posted @ 2013-08-01 21:57 windysai 阅读(382) 评论(0) 推荐(0)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1113题意:输入一个字典,然后再输入若干单词(每行中,1 2 #include 3 #include 4 using namespace std; 5 6 char dic[105][10]; 7 char sorted[105][10]; 8 char word[10]; 9 10 // 字符比较函数11 int cmp_char(const void *_a, const void *_b)12 {13 char *a = (char *)_a;14 char *b = ... 阅读全文
posted @ 2013-07-31 22:02 windysai 阅读(261) 评论(0) 推荐(0)
摘要:题目1:传话游戏时间限制: 1000ms 内存限制: 256MB描述Alice和Bob还有其他几位好朋友在一起玩传话游戏。这个游戏是这样进行的:首先,所有游戏者按顺序站成一排,Alice站第一位,Bob站最后一位。然后,Alice想一句话悄悄告诉第二位游戏者,第二位游戏者又悄悄地告诉第三位,第三位又告诉第四位……以此类推,直到倒数第二位告诉Bob。两位游戏者在传话中,不能让其他人听到,也不能使用肢体动作来解释。最后,Bob把他所听到的话告诉大家,Alice也把她原本所想的话告诉大家。由于传话过程中可能出现一些偏差,游戏者越多,Bob最后听到的话就与Alice所想的越不同。Bob听到的话往往会变 阅读全文
posted @ 2013-07-31 09:30 windysai 阅读(318) 评论(0) 推荐(0)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2054 这是目前以来我写的最长的代码!所以看到这篇报告的读者,如果自问耐心不是过人的话,还是不要看代码了,建议只看思路。这是很久以前遗留下来的题目,wa了一次之后就放下了,因为知道会很繁琐,不是单纯短短几行代码就搞定的(那时天真的做法啊~~)。几天前,心血来潮,决定把它干掉!!!前前后后做了足足3天,其实没那么夸张啦,加起来应该7、8个小时左右吧(不好意思,说了那么多废话),步入正题。 这道题目题意很简单:就是判别A是否等于B。不过有很多细节需要注意,我就是看着人家给的测试数据才知道的,辛辛苦苦地写 阅读全文
posted @ 2013-04-28 19:55 windysai 阅读(216) 评论(0) 推荐(0)