您的位置:首页 > 编程语言 > C语言/C++

c++ 实现目标单词在文本中出现的次数

2018-03-28 09:04 309 查看
要求给定一串字符,并给定若干字符,求给定的一串字符中每个单词出现的次数

#include <bits/stdc++.h>
using namespace std;
const int maxn=1e5+50;
char ch[maxn];
char txt[maxn];
map<string,int>mp;
vector<string>ss;
int tot=0;
void gettxt()
{
string s;
for(int i=0;i<strlen(txt);i++)
{
if(txt[i]==' ')
{
if(s.size())
{
transform(s.begin(), s.end(), s.begin(), ::tolower);
mp[s]=0;
ss.push_back(s);
}
s.clear();
}
else
{
s+=txt[i];
}
}
if(s.size())
{
mp[s]=0;
ss.push_back(s);
}
}
int main()
{
gets(txt);
//puts(txt);
gettxt();
string s;
while(cin>>s)
{
transform(s.begin(), s.end(), s.begin(), ::tolower);
if(mp.count(s))
mp[s]++;
}
for(int i=0;i<ss.size();i++)
{
cout<<ss[i]<<" "<<mp[ss[i]]<<endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  字符串