每日一道演算法題(6)
阿新 • • 發佈:2019-02-13
最後一個單詞的長度
給定由大寫,小寫字母和空格組成的字串,返回 最後 一個單詞的長度。
如果輸入中不存在單詞,返回 00。
注意:
“單詞”是指不包含空格符號的字串
例如:
對於字串”hello World”(不帶引號), 那麼返回的結果是 55;
對於字串”abc abc “(不帶引號),那麼返回的結果就是 33。
輸入格式
輸入僅一行,為字串 ss(長度不超過 1000010000)。
輸出格式
輸出 ss 中最後一個單詞的長度。
樣例輸入1
Today is a nice day
樣例輸出1
3
樣例輸入2
The quick brown fox jumps over the lazy dog
樣例輸出2
3
#include <iostream>
#include <string>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[]) {
int flag=1;
int count=0;//計數
string s;
getline(cin,s);//讀入一行
int len=s.length();
for(int i=len-1;i>=0;i--){//直接指向最後一個單詞
if(flag==1&&s[i]==' ')continue;//如果末尾單詞有空格,則跳過
else if(s[i]!=' '){
flag=0;count++;
}
else break;
}
cout<<count;
return 0;
}