C++ //练习 14.39 修改上一题的程序令其报告长度在1至9之间的单词有多少个、长度在10以上的单词又有多少个。

C++ Primer(第5版) 练习 14.39

练习 14.39 修改上一题的程序令其报告长度在1至9之间的单词有多少个、长度在10以上的单词又有多少个。

环境:Linux Ubuntu(云服务器)
工具:vim

代码块

cpp 复制代码
class Check{
	public:
	Check(int s = 0): sz(s){}
	bool operator()(const string& s){
		return s.size() == sz ? true : false;
	}

	private:
	size_t sz;
};

int main(){
	vector<string> str;
	string s;
	while(cin>>s){
		str.push_back(s);
		if(cin.get() == '\n'){
			break;
		}
	}
	int count = 0;
	for(int i = 1; i < 10; i++){
		count += count_if(str.begin(), str.end(), Check(i));
	}
	cout<<"Length(1~9) words: "<<count<<endl;
	cout<<"Length(>=10) words: "<<str.size() - count<<endl;

	return 0;
}
相关推荐
李昊哲小课21 小时前
Python 线性数据结构详解
开发语言·数据结构·python
㓗冽21 小时前
龟兔赛跑预测-进阶题6
算法
云泽80821 小时前
蓝桥杯算法精讲:贪心算法的简单应用与题解
算法·贪心算法·蓝桥杯
程序员夏末21 小时前
【LeetCode | 第四篇】算法笔记
笔记·算法·leetcode
jacsonchen21 小时前
MacOS升级ruby版本
开发语言·macos·ruby
李昊哲小课21 小时前
Python 数据结构示例
开发语言·数据结构·python
java1234_小锋21 小时前
Java高频面试题:RabbitMQ如何实现消息的持久化?
java·开发语言
崇山峻岭之间21 小时前
matlab的高频注入
开发语言·matlab
溪海莘21 小时前
如何使用uv创建并管理一个新的空白的python项目?
开发语言·python·uv
DeepModel21 小时前
【概率分布】多项分布详解
算法·概率论