AcWing 3581. 单词识别 -- 双指针 + 哈希表
原题链接
简单
作者:
小.bug
,
2022-08-09 11:09:22
,
所有人可见
,
阅读 612
#include <bits/stdc++.h>
using namespace std;
const int N = 1010;
map<string, int> cnt;
int main()
{
string s;
getline(cin, s);
for(int i = 0; i < s.size(); i ++)
{
if(isalpha(s[i])) //是字母,说明找到一个有效单词
{
string word = ""; //存储以s[i]为首字母的这个单词
int j = i;
while(j < s.size() && isalpha(s[j])) //如果是字母一直往后找
{
word += tolower(s[j]);
j ++;
}
cnt[word] ++; //循环结束,说明word就是刚才找到的单词
i = j;
}
}
for(auto [k, v] : cnt) cout << k << ":" << v << endl;
return 0;
}
简洁