
字符串大模拟题
文章平均质量分 50
字符串大模拟
一只可爱的小猴子
即使再小的帆也能远航,无论什么时候都要保持自信
展开
-
201809-3 CCF 元素选择器 满分题解(超详细注释代码) + 解题思路(超详细)
,并且如果路径中的该行中有元素与查询的最后一个元素匹配(这个匹配需要map来记录每一行有哪些元素,对应的数据结构可以是。当以D结尾的路径遍历完时,并且查询中的元素也为空,则说明这条路径能够满足查询,则将这个答案保存下来。至于p数组中的值,就是利用一个数组记录每一行之前最近的起始行就可以得到,具体可见代码,不难理解。对于每一条以D结尾的路径,从D开始回溯,每次回溯到当前行的父亲行(这里需要一个。显然第一种查询需要存储每一种元素在内容中所有出现的行,对应的数据结构可以是。原创 2023-03-07 21:11:10 · 698 阅读 · 0 评论 -
201612-3 CCF 权限查询 满分题解(详细注释 + 逻辑清晰)+ 解题思路 : STL大模拟
/存储所有角色包含的所有权限(所含权限的最大等级值)unordered_map u;//存储所有用户包含的所有权限(所含权限的最大等级值)//存储所有权限集合(包括有等级权限和有等级权限)根据读入将权限(对应的等级)、角色(对应的权限)、用户(对应的权限)进行存储。再根据存储的集合进行权限查询。原创 2023-02-28 16:50:44 · 307 阅读 · 0 评论 -
201912-3 CCF 化学方程式 (满分题解)
然后将后面那一串进行递归处理(因为可能会出现括号嵌套)对于单独一边的表达式,又可以根据加号进行分割成各项。那么就对左右两边表达式分别处理,存储在map中,将每一项处理后的map进行合并成一个总的map。判断化学方程式两边元素种类以及个数是否相等。map可以直接用==进行比较是否相等。首先先剥离出前面的数字系数。,出现TLE仔细查看逻辑。...原创 2022-08-25 20:11:41 · 860 阅读 · 0 评论 -
201709-3 CCF-CSP JSON查询 满分题解(两种代码解法)+ 解题思路
相当于指针跟着函数的操作移动,不需要再额外增加形参记录当前指针位置。,原来的下一个字符会变成当前这个字符,处理的时候要考虑到这个问题。,会出错(该结构体的嵌套结构体赋给该结构体时。采用结构体嵌套map的方式存储(可以看代码,结构比较清晰)首先将整个对象存储下来,然后根据每个查询进行输出结果。对于多个函数操作一个字符串,可以将指针。这种需要嵌套定义并且类型不一时,可以。会多次用到的部分,使用函数来表示。难点在于存储对象,以及解析对象。使用未定义函数需要申明,...原创 2022-07-31 11:47:04 · 569 阅读 · 0 评论 -
201712-3 CCF Crontab 满分题解(详细代码注释) + 解题思路
存储该任务能执行的时间,当minute,hour,day,month,week都满足时,将时间和命令输出。那么如果时间允许的话,可以直接把时间枚举一遍,每个时间判断一下该任务能否执行即可。其实时间1970010100,结束时间209912312359。算下来是六千万多分钟,10s时间足够,因此暴力枚举。,模拟时间的递增,并且能将时间进行格式化输出。题目意思就是输出每一时刻能被执行的命令。应记住,可以看作是一个模板。...原创 2022-07-30 21:06:06 · 612 阅读 · 0 评论 -
201803-3 CCF URL映射 满分题解
规则的路径和名字用空格间隔,则可以通过cin分别读取和存储。对字符串的类型进行判断str/int/path/常量。匹配的实现,可以采用双指针,以/为分隔,取出字符串。将答案存储在vector中。匹配过程中,出现不匹配则清空vector,返回。,若匹配成功,则输出答案,否则404。再将url每一条读入并解析。...原创 2022-07-24 21:52:49 · 531 阅读 · 0 评论 -
201703-3 CCF markdown 满分题解(详细代码注释) + 解题思路
在根据区块间的空行进行将区块分割存储在vector >中,其中每个vector元素是一个区块,vector < string >的每个元素是该区块中的每一行内容。强调和链接,二者写成两个函数单独处理,只需要遍历一遍一行的文本,发现有强调或链接的内容,将markdown格式换成html格式即可(另外用一个string来存储变化后的串,详见代码实现,不难)并遍历区块中的每一行内容,对每一行内容进行强调和链接的处理,再进行输出。遍历每一个区块,根据区块的类型输出相应格式。原创 2022-07-10 23:41:25 · 559 阅读 · 0 评论 -
CCF 路径解析 满分代码(两种解法) + 解题思路 + 技巧总结 201604-3
(代码实现1是用workmore函数对读入的串先进行去除多余/,在workpoint函数里边将字符串根据/进行划分,边处理./…(代码实现2是在get函数里边将字符串根据/进行划分,边处理多余/问题, 用order函数处理./…'表示返回上一级,则将存储路径的vector数组进行popback()或者stack的pop(),需要在遍历时加上初始的当前目录,以便返回上一级。将不规范的路径规范化,就是需要使路径。'.'表示当前目录,则不处理,跳过。,就是根据给出的文件路径处理。最后将保存的路径输出就是答案。原创 2022-03-07 21:15:27 · 888 阅读 · 0 评论 -
CCF 模板生成系统 满分代码(2种写法) + 解题思路 + 技巧总结 201509-3
题目的意思就是给你模板和变量名和变量值,将模板中变量名的地方用变量值替换输出,若无变量值输出空格。如果出现{{ 则表明出现了变量名,然后遍历模板中每一行内容。将变量名 和变量值 以。否则照常输出模板内容。原创 2022-03-06 16:20:18 · 459 阅读 · 3 评论 -
CCF 命令行选项( 满分代码 + 解题思路 + 技巧总结)2014-03-3
- 题目中说明按照小写字母升序输出选项,所以可以**将答案存储在string数组**中,如果该字母为选项,则输出,若为带参选项,则将参数也输出,ans数组存储参数 - 选项有两种,所以首先将第一行格式串读入,判定每个字母是否带参,用**两个布尔数组来存储该字母是否带参** - 为了方便字符串的存储,首先**利用getline()读取一行的字符串内容** - 再**利用stringstream将读取的一行字符串根据空格分层存储在vector数组**中 - 然后根据读取到的内容进行判断,有三种情况:为原创 2022-01-17 20:43:58 · 880 阅读 · 0 评论