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;
}
相关推荐
独自破碎E1 分钟前
BISHI73 【模板】欧拉函数计算Ⅰ ‖ 朴素求值:试除法
java·开发语言
pen-ai1 分钟前
【Yolo系列】Yolov3 目标检测算法原理详解
算法·yolo·目标检测
田里的水稻2 分钟前
EP_基于UWB和单线激光雷达的托盘转送
人工智能·算法·数学建模·机器人·自动驾驶
List<String> error_P3 分钟前
DFS(深度优先搜索)
数据结构·算法·dfs
m0_531237177 分钟前
C语言-结构体进阶
c语言·开发语言
今儿敲了吗7 分钟前
27| 魔法封印
数据结构·c++·笔记·学习·算法
遨游xyz8 分钟前
BM算法(Boyer-Moore)
开发语言·python
honortech12 分钟前
算法题中的 mid 中点问题
算法
今儿敲了吗13 分钟前
30| 木材加工
数据结构·c++·笔记·学习·算法
独自破碎E18 分钟前
BISHI66 子数列求积
android·java·开发语言