首页 > 代码库 > 华为huawei oj

华为huawei oj

001题目描述

计算字符串最后一个单词的长度,单词以空格隔开。 

输入描述:

一行字符串,非空,长度小于5000。

输出描述:

整数N,最后一个单词的长度。

示例1

输入

hello world

输出

5

思路::遍历一遍找到空格个数,在遍历一遍定位最后一个空格 然后总长度减去定位 就是最后一个字母的长度
 1 #include <iostream>
 2 
 3 using namespace std;
 4 
 5 int main()
 6 {
 7     char a[5000];                  //定义一个char数组
 8      gets(a);                        //把字符串读入字符串数组 
 9     int m=0,n=0,sum=0;
10     for (int i = 0; a[i]!=\0; i++)    //遍历结束的标志是 a[i]!=‘\0‘;
11     {
12         sum++;
13         if (a[i] ==  )
14             n++;
15     }
16     if (n == 0)
17     {
18         cout << sum ;
19     }
20     else
21     {
22         m = n;
23         for (int i = 0; a[i] != \0; i++)
24         {
25             if (a[i] ==  )
26                 m--;
27             if (m == 0)
28             {
29                 cout << sum - i - 1;
30                 break;                               //break 跳出for  continue跳出这次 继续下一轮的循环 return 结束了
31             }
32         }
33     }
34     
35     return 0;
36 }
#include<iostream>
#include<string>
#include<vector>
 
using namespace std;
 
int main(){
    string input;
    vector<string>arr;
    while(cin>>input){
        arr.push_back(input);
    }
    cout<<arr[arr.size()-1].length()<<endl;     
    return 0;
}
尼玛 太简单了 !!!!!!!!

 

华为huawei oj