1071. Speech Patterns (25)
来源:互联网 发布:资治通鉴和史记 知乎 编辑:程序博客网 时间:2024/06/01 08:39
1. 原题: https://www.patest.cn/contests/pat-a-practise/1071
2. 思路:
题意:
词频统计题。输出一行字符串中出现频率最高的单词及次数(不区分大小写)。
思路:
先把字符串保存到string s里,
然后遍历每个字符,不是字母或数字,置为空格。
然后把s读入字符串流ss里,输出每个单词,插入map。
其中map的key是单词,value是次数。
最后输出即可。
已AC。
词频统计题。输出一行字符串中出现频率最高的单词及次数(不区分大小写)。
思路:
先把字符串保存到string s里,
然后遍历每个字符,不是字母或数字,置为空格。
然后把s读入字符串流ss里,输出每个单词,插入map。
其中map的key是单词,value是次数。
最后输出即可。
已AC。
3. 源码:
#include<iostream>#include<string>#include<sstream>//使用字符串流, 用于转换成单词#include<cctype>//使用iisalnum函数, 判断是否字母或数字#include<map>using namespace std;int main(void){//freopen("in.txt", "r", stdin);string s;getline(cin, s);//读入一行for (int i = 0; i < s.size(); i++){s[i] = tolower(s[i]);//转换成小写if (!isalnum(s[i]))s[i] = ' ';//无效字符,置为空格}string re;//保存结果的单词int cnt = 0;map<string, int> word;stringstream ss(s);//字符串流sswhile (ss >> s)//字符串流一次读出一个单词,遇到空格截止。{if (word.count(s) == 0)word[s] = 0;word[s]++;if (cnt < word[s])//记录最大次数{cnt = word[s];re = s;}else if (cnt == word[s] && s < re)re = s;}cout << re << ' ' << cnt << endl;return 0;}
1 0
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- Spring JPA 使用@transaction注解时产生CGLIB代理冲突的解决方法
- 【Unity资源】实用好用的源码工具
- WPF 深入浅出 模板(DataTemplate 数据外衣、ControlTemplate 控件外衣、ItemsPanelTemplate 项布局
- Activiti 历史流程图高亮显示
- git学习日记--开始使用github
- 1071. Speech Patterns (25)
- 关于 cocoapods 的使用
- android spinner控件
- 匿名内部类是否可以继承其他类或实现接口
- 算典03_习题_01_Uva-1585
- 整数数组的冒泡排序(从小到大)
- leetcode笔记:33. Search in Rotated Sorted Array
- 用spring data 查询 MongoDb 空间坐标 范围距离内所有的点
- PHP程序猿必知的24个库