1816. 截断句子
1816. 截断句子
句子 是一个单词列表,列表中的单词之间用单个空格隔开,且不存在前导或尾随空格。每个单词仅由大小写英文字母组成(不含标点符号)。
例如,“Hello World”、“HELLO” 和 “hello world hello world” 都是句子。
给你一个句子 s 和一个整数 k ,请你将 s 截断 ,使截断后的句子仅含 前 k 个单词。返回 截断 s 后得到的句子。
示例 1:输入:s = "Hello how are you Contestant", k = 4
输出:"Hello how are you"
解释:
s 中的单词为 ["Hello", "how" "are", "you", "Contestant"]
前 4 个单词为 ["Hello", "how", "are", "you"]
因此,应当返回 "Hello how are you"示例 2:输入:s = "What is the solution to this problem", k = 4
输出:"What is the solution"
解释:
s 中的单词为 ["What", "is" "the", "solution", "to", "this", "problem"]
前 4 个单词为 ["What", "is", "the", "solution"]
因此,应当返回 "What is the solution"示例 3:输入:s = "chopper is not a tanuki", k = 5
输出:"chopper is not a tanuki"
提示:
- 1 <= s.length <= 500
- k 的取值范围是 [1, s 中单词的数目]
- s 仅由大小写英文字母和空格组成
- s 中的单词之间由单个空格隔开
- 不存在前导或尾随空格
解题思路
s 中的单词之间由单个空格隔开,因此我们需要遍历s中的每一个字符,当遇到空格时直接跳过,当遇到字母时,将字母后面连续的没有被空格分隔开的字符全部遍历一遍,直到遇到空格时结束遍历,则说明我们已经找到了一个单词,如此类推,直到我们找到了题目要求的k个单词以后,跳出循环,并且记录下当前的下标,该下标之前的字符串就是我们需要截断的字符串,然后将该子串返回。
代码
class Solution {public:string truncateSentence(string s, int k) {int i=0;while (k>0){if (isalpha(s[i])){while (isalpha(s[i]))i++;k--;}else i++;}return s.substr(0,i);}
};
1816. 截断句子相关推荐
- 【快乐水题】1816. 截断句子
原题: 力扣链接:1816. 截断句子 题目简述: 句子 是一个单词列表,列表中的单词之间用单个空格隔开,且不存在前导或尾随空格.每个单词仅由大小写英文字母组成(不含标点符号). 例如,"H ...
- LeetCode 1816. 截断句子
文章目录 1. 题目 2. 解题 1. 题目 句子 是一个单词列表,列表中的单词之间用单个空格隔开,且不存在前导或尾随空格.每个单词仅由大小写英文字母组成(不含标点符号). 例如,"Hell ...
- 力扣 1816. 截断句子
题目 句子 是一个单词列表,列表中的单词之间用单个空格隔开,且不存在前导或尾随空格.每个单词仅由大小写英文字母组成(不含标点符号). 例如,"Hello World"." ...
- 文巾解题 1816. 截断句子
1 题目描述 2 解题思路 emm,没啥思路.一行搞定 class Solution:def truncateSentence(self, s: str, k: int) -> str:retu ...
- LeetCode简单题之截断句子
题目 句子 是一个单词列表,列表中的单词之间用单个空格隔开,且不存在前导或尾随空格.每个单词仅由大小写英文字母组成(不含标点符号). 例如,"Hello World"." ...
- 截断句子取前k个单词
句子 是一个单词列表,列表中的单词之间用单个空格隔开,且不存在前导或尾随空格.每个单词仅由大小写英文字母组成(不含标点符号). 例如,"Hello World"."HEL ...
- leetcode 目录
动态规划 文巾解题 5. 最长回文子串_刘文巾的博客-CSDN博客 文巾解题 10. 正则表达式匹配_刘文巾的博客-CSDN博客 文巾解题 198. 打家劫舍_UQI-LIUWJ的博客-CSDN博客 ...
- 【LeetCode 总结】Leetcode 题型分类总结、索引与常用接口函数
文章目录 零. Java 常用接口函数 一. 动态规划 二. 链表 三. 哈希表 四. 滑动窗口 五. 字符串 六. DFS.BFS 七. 二分法 八. 二叉树 九. 偏数学.过目不忘 and 原地算 ...
- LeetCode 496. 下一个更大元素 I
599. 两个列表的最小索引总和 添加链接描述 假设 Andy 和 Doris 想在晚餐时选择一家餐厅,并且他们都有一个表示最喜爱餐厅的列表,每个餐厅的名字用字符串表示. 你需要帮助他们用最少的索引和 ...
最新文章
- R语言层次聚类(hierarchical clustering):特征缩放、抽取hclust中的聚类簇(cutree函数从hclust对象中提取每个聚类簇的成员)、基于主成分分析的进行聚类结果可视化
- Linux学习笔记016---CentOS7虚拟机设置使用静态IP上网_配置集群的时候可以用
- java内存溢出模拟_模拟实战排查堆内存溢出(java.lang.OutOfMemoryError: Java heap space)问题...
- rails获取json内容
- inDesign入门教程,如何对齐和分组内容?
- Win7如何修改开机动画
- node2vec 图向量
- 工程师素质拓展课程主页(2012级)
- 【路在脚下】----成长的感觉
- vivado error:Multiple declarations of unsigned included via multiple use clauses
- react ts版 组件封装总结
- 爱奇艺密码加密js分析
- OSChina 周四乱弹 —— 妹子上班迟到的原因
- vue自定义点击空白隐藏其他标签
- 便携式储能系统---“钱景”无限
- 深交所a股证券代码_深交所股票代码000001
- ASP.NET MVC预览4-使用Ajax和Ajax.Form
- 计算机与信息专业综合试题,2017年西南大学计算机与信息科学学院软件学院808计算机专业基础综合考研题库...
- Ducky Debugging(字符串输入)题解
- Python文本挖掘笔记:1.3文本挖掘的基本思路