阿里C++开发 笔试题第一道编程题 字符串插空格

更新:已解决。已找到错误原因:忘记输出N/A
另外,此题使用回溯再leetcode上是会超时的,建议移步去试试https://leetcode.com/problems/word-break-ii

-------------

题目
第一行输入一个字符串s,第二行输入一个整数n,之后n行输入n个字符串。
要求将第一个字符串用空格分割,分割成一个字符串数组,其中的字符串全都由上述n个字符串组成。要求空格数最少。

样例输入

ilikealibaba
6
i
like
ali
liba
baba
alibaba

样例输出

i like alibaba


#阿里巴巴#
全部评论
如果输入的是空串打印n/a这个刚好占25%
点赞 回复 分享
发布于 2017-08-25 21:22
cout n/a啊少年
点赞 回复 分享
发布于 2017-08-25 21:23
woc。写着写着。忘记不存在的情况了。
点赞 回复 分享
发布于 2017-08-25 21:23
https://leetcode.com/problems/word-break-ii/description/
点赞 回复 分享
发布于 2017-08-25 21:27
???楼主为啥你代码里面有“敏感词”
点赞 回复 分享
发布于 2017-08-25 21:28
直接dp就可以出来的
点赞 回复 分享
发布于 2017-08-25 21:31
if(_s.empty()){ cout<<_s<<endl; } 这个是什么意思,为什么要加这行?
点赞 回复 分享
发布于 2017-08-25 21:41
同75% 也把n/a忘了,不知道是不是这个原因...... 没用递归,迭代做的
点赞 回复 分享
发布于 2017-08-25 21:44
咋都写这么复杂啊,直接从头到尾贪婪匹配不就行了,难道我写错了么,不过,为啥提示“代码全部通过”呢
点赞 回复 分享
发布于 2017-08-25 21:55
楼主,我也是字典树做的,不过感觉是不用回溯可以,直接一路按着树往下找,找不到的单词就在***空格。
点赞 回复 分享
发布于 2017-08-25 22:16
这里也有一个版本 http://www.cnblogs.com/hellowooorld/p/7429887.html
点赞 回复 分享
发布于 2017-08-25 22:20

相关推荐

微风不断:兄弟,你把四旋翼都做出来了那个挺难的吧
点赞 评论 收藏
分享
尊嘟假嘟点击就送:加v细说,问题很大
点赞 评论 收藏
分享
点赞 5 评论
分享
牛客网
牛客企业服务