字符串
若渴.
大智不群,大善无帮,何惧孤步,何惧毁谤。
展开
-
病毒侵袭持续中 HDU - 3065
题目链接 HDU-3065 AC代码 因为没有在文本串字符超出字典树范围之后重置now节点导致一直WAWAWAWA。 要理解板子呀! #include <cstdio> #include <cstring> #include <queue> using namespace std; int const NUM = 5e4 + 10; int const LEN = 26; int const N = 2e6 + 6; char str[1010][100]; cha原创 2021-02-23 21:43:19 · 148 阅读 · 0 评论 -
Consistency Checker LightOJ - 1129
题目链接 LightOJ-1129 题解 字典树的简单应用。 见AC代码注释。 WA 没有使用字典树。建立了sets数组记录字符串中字母是否出现,对每一个字符串,遍历其所有的字符并在sets中将该字符位置设置为true。 由于在这之前对所有的字符串按长度进行了排序,故只需要判断第一个字符串之外的所有字符串的字符位置是否全部为true即可。 问题所在: 3 911 912 111 对于这一组样例将返回错误的结果。 #include <string> #include <iostream&g原创 2021-02-20 13:00:20 · 186 阅读 · 0 评论 -
2020 辽宁省大学生程序设计竞赛 最长回文串
题目链接 8440F 题解 题意 对于给出的若干个回文串,经过四次题目所给的操作后求出最长的回文串。 思路 要构成一个最长的回文串,如果可以找到一个字符串本身是回文串且在题目所给的字符串中该字符串有且仅有一个,那么这个字符串一定位于回文串中且位于中间。 回文串中其他的每个不同的字符串必然各有偶数个。 所以我们先求出每一种不同的字符串的数量,各取出最大偶数个之后判断剩余的字符串中是否有回文串即可。 AC代码 #include <bits/stdc++.h> using namespace std;原创 2020-10-26 20:38:33 · 216 阅读 · 0 评论 -
LeetCode 5544. 执行操作后字典序最小的字符串 lexicographically-smallest-string-after-applying-operation
题目链接 LC5544 题解 题意 两种操作: 轮转,取第b个字符作为第一个,之前的字符在保持相对顺序不变的情况下补到字符串末尾。 累加,奇数位的字符加a,数字超过9就会变成0。 求最小字典序的字符串。 思路 枚举所有可能的情况,取一个最小的。 在初始字符串轮转i次的情况下,对字符串的奇数位累加j次,若可以使得字符串的偶数位变成奇数位,即b是奇数的情况下,再使得字符串的偶数位累加k次(这里可以对偶数位累加是因为若b是奇数,则我们可以保证字符串的字符总体不变的情况下改变字符的顺序使得奇数位移动到偶数位)。原创 2020-10-19 14:33:41 · 293 阅读 · 0 评论