随笔分类 - 字符串
摘要:题目链接 链接 翻译 让你选择字符串 的一个前缀和一个后缀(可以为空), 然后拼成一个字符串。 要求这个字符串得是一个回文串,且这个字符串的长度不能超过原串 的前提下最长。 输出这个字符串, easy 版本,长度小于等于 题解 考虑最后的答案 ,是由
阅读全文
摘要:题目链接 点我呀 翻译 给你一个长度为n(N ⇐ 3000)的字符串S。 一个长度为m(m<=n)的字符串T。 字符串是一个magic string当且仅当这个字符串有前缀T。 (这两个字符串都只有小写字母) 对于S, 可以把它的第一个字符删掉然后加到一开始为空串的字符串A的最前面。 也可以加到A的
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你把n个字符串重新排序,然后按顺序连接在一起 使得这个组成的字符串的"sh"子序列最多 【题解】 StringBuilder比直接用字符串的"+"来得快 【代码】 java import java.io. ; import java.util. ; p
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 输入的二进制长度最长为7 所以得开个sta[7][2^7]的样子才存的下所有的字符的。。 定义这么一个数组当字典。 然后一个字符一个字符地读。。组合成题目中的参数。 然后根据读入的每个长度为len的二进制,在字典中找到相应的字符
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 在做之前需要了解一个知识点。 就是如果一个字符串s是一个a循环串。 (字符串的长度设为n,下标从1开始 那么s[1..n a]和s[1+a..n]是相同的. 且这是充分必要条件。 可以看这篇文章 "链接" 显然1..n a就对应
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 字符串排序后 显然是n/2 1和n/2这两个字符串进行比较。 设为a,b 找到第一个不相同的位置。 即0..i 1是相同的前缀,然后第i位不一样了。 则如果i是a的最后一位了。 那么直接输出a就好。 这样满足大于等于a且小于b
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 给你n个位置,然后让你从某些位置开始的|p|个位置,填上p这个字符串. 问你填的时候是否会发生冲突 输出0 否则输出最终n个位置组成的可能的字符串的总数 【题解】 扩展KMP. 画个图会发现。 相邻的两个填写操作。 只要发生了重叠。想要看有没有冲突。 相
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 枚举每一位字母是什么。 从小到大枚举。 然后计算每一位的总贡献是多少。 取最小的那个输出。 【代码】 cpp include using namespace std; const int M = 50; const int N
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 不用真的把每一位都取出来。 用一个后缀的思想。 把原串复制一遍接在后面,然后把每个字符串 都当成一个长度为n的后缀就好了。 比较每个后缀就行了 【错的次数】 在这里输入错的次数 【反思】 在这里输入反思 【代码】 cpp inc
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 如果一个字符没有对应的镜像,那么它对应的是一个空格。 然后注意 aba这种情况。 这种情况下b也要查一下它的镜像是不是和b一样。 【错的次数】 在这里输入错的次数 【反思】 在这里输入反思 【代码】 cpp include us
阅读全文
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在这里输入题意 【题解】 用一个字符数组,用数组的下标相邻来代表相邻的关系。 【错的次数】 在这里输入错的次数 【反思】 int i; for (i = 0;s[i] && s[i]!=c;i++) 这样能定位到字符数组里面的字符c 在不知道字符串长度的
阅读全文
摘要:Time Limit: 3 secondMemory Limit: 2 MB输入一个三位数的整数,将数字位置重新排列,组成一个尽可大的三位数。例如:输入213,重新排列可得到尽可能大的三位数是321。 Input输入文件只有一行,内容为一个三位数的整数。如198Output输出文件只有一行,输出内容...
阅读全文
摘要:Time Limit: 3 secondMemory Limit: 2 MB已知一个任意的不完全重复的四位正整数,将其数字重新组合成一个最大的数和一个最小的数并使之相减,这称为“重排求差”。其结果不足四位时,右边补0,组成大的四位数;左边补0,组成小的四位数。重复这个过程,最多七步,必能得到6174...
阅读全文
摘要:Time Limit: 3 secondMemory Limit: 2 MB输入10个学生的姓名,将它们以字典序输出。 例如10个数分别如下: luo ruan hu li hong wang lin zhang cai liu 所得结果为 cai hong hu li lin liu luo ru...
阅读全文
摘要:DescriptionVasiliy is fond of solving different tasks. Today he found one he wasn't able to solve himself, so he asks you to help.Vasiliy is given n s...
阅读全文
摘要:Time Limit: 1 secondMemory Limit: 128 MB【问题描述】给出一个A/B-C/D表示的分数减法算式,A,B,C,D均为不超过32767的正整数,求A/B-C/D的差,若差为整数,则输出这个整数;若差为分数,则按A/B格式输出;要求为最简分数,若差为负数,则在上述要求...
阅读全文
摘要:Time Limit: 1 secondMemory Limit: 50 MB【问题描述】 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符(键盘上的减号),最后一位是识别码,例...
阅读全文
摘要:Time Limit: 10 secondMemory Limit: 2 MB问题描述输入一个数学计算表达式,输出结果。(除法运算结果取整)Input文件输入仅一行,输入数学表达式Output输出数学表达式以及结果 Sample Input11001+98Sample Output11001+98=...
阅读全文
摘要:Time Limit: 1 secondMemory Limit: 128 MB【问题描述】区间运算是数学的一个领域。在区间运算中,常量和变量并不表示为一个单独、精确的值,而是表示为一个有着上界和下界的区间或范围。在普通的运算中,一个数量可以表示为数轴上的一个点;而在区间运算中,一个数量表示数轴上的...
阅读全文
摘要:Time Limit: 1 secondMemory Limit: 50 MB【问题描述】明明进了中学之后,学到了代数表达式。有一天,他碰到一个很麻烦的选择题。这个题目的题干中首先给出了一个代数表达式,然后列出了若干选项,每个选项也是一个代数表达式,题目的要求是判断选项中哪些代数表达式是和题干中的表...
阅读全文