有趣的算法问题10——最后一个单词的长度
来源:互联网 发布:三维电器接线软件 编辑:程序博客网 时间:2024/05/21 08:52
有趣的算法问题10——最后一个单词的长度
从今天开始简单的算法正式进入有趣的算法,激不激动?兴不兴奋?
所有算法均是用c++编写
所有题目均是来自计蒜客
题目
给定由大写,小写字母和空格组成的字符串,返回 最后 一个单词的长度。
如果输入中不存在单词,返回 0。
注意:“单词”是指不包含空格符号的字符串
例如:
对于字符串”hello World”(不带引号), 那么返回的结果是5;
对于字符串”abc abc “(不带引号,这里有空格的喔~!),那么返回的结果就是3。
输入格式
输入仅一行,为字符串 s(长度不超过 10000)。
输出格式
输出 s 中最后一个单词的长度。
形如:
样例输入1
Today is a nice day
样例输出1
3
样例输入2
The quick brown fox jumps over the lazy dog
样例输出2
3
刨坑点:
1.这道题最大的陷进就是在输入完字符的时候给你很多空格,你有用肉眼看不出来,这个才是真正的坑,我也是凭着我的直觉判断里面可能有很多的空格,然后我把有空格的全部都挑出来。这也可能是怕做项目时,好多熊孩子违规输入吧!!~~
2.我的思路是从最后一个开始找最后的一个单词管它有没有空格先把它算进去,第二次再来做细分。也是说第一次最先确定最后一个单词的位置,然后第二次再来数单词的个数就行了。
代码
#include <string>using namespace std;int main(){ string s; getline(cin,s); int j=0; int num=0; for(int i=s.length()-1;i>=0;i--,j++){ if(s.data()[i]==' '&&s.data()[i-1]!=' '&&s.data()[i+1]!=' '&&i!=s.length()-1){ break; } } for(int z=s.length()-j;z<s.length();z++){ if(s.data()[z]!=' '){ num++; } } cout<<num; return 0;}
测试
我其实在最后输入了很多空格只是显示不出来…
测试成功!~
阅读全文
1 0
- 有趣的算法问题10——最后一个单词的长度
- 最后一个单词的长度
- 最后一个单词的长度
- 最后一个单词的长度
- 最后一个单词的长度
- 最后一个单词的长度
- 最后一个单词的长度
- 最后一个单词的长度
- 最后一个单词的长度
- 华为OJ——字符串最后一个单词的长度
- 华为OJ——字符串最后一个单词的长度
- ——字符串最后一个单词的长度
- 华为OJ——字符串最后一个单词的长度
- Python|计蒜客——最后一个单词的长度
- 牛客网题目——字符串最后一个单词的长度
- 华为题库—1字符串最后一个单词的长度
- 字符串问题 求最后一个单词的长度
- 字符串最后一个单词的长度
- 你知道思维导图么?
- LINUX打印系统
- Java、PHP、Python、JS 等开发者都如何绘制统计图
- java利用支付宝支付
- 可选参数,被打开窗口的名称
- 有趣的算法问题10——最后一个单词的长度
- TCP首部的URG与PSH及其区别
- 酷我音乐前端面试
- 【HDU】3586 Information Disturbing 二分+树形dp
- git备忘录
- Lateral View用法 与 Hive UDTF explode
- hibernate对象的三种状态以及他们之间的转换
- org.apache.hadoop.mapred.YarnChild: GC overhead limit
- bzoj 3208: 花神的秒题计划Ⅰ