本文最后更新于 452 天前,其中的信息可能已经有所发展或是发生改变。
本题有很多做法,最常见的是使用字符串数组来存储的方法。这里我想使用一种新的方法,同时向大家介绍一下【Vector】的使用。
什么是Vector?
vector是【C++】中一个多功能的,能够操作多种数据结构和算法的模板类和函数库。我们可以将它理解为一个能够存放任意类型的动态数组,能够增加和压缩数据。
Vector的基本使用
Vector头文件:#include<vector>
声明一个vector容器:vector<数据类型> 名称;
添加元素到容器中:名称.push_back(元素);
判断某一元素是否存在于容器中:
vector<数据类型> :: iterator iter;
iter = find(容器名.begin(), 容器名.end(), 匹配元素);
if(iter != 容器名.end())
{
// 存在于容器中
}
获取容器中元素个数:名称.size();
本题思路
借助vector的便利性,我们可以轻松实现本题功能。
在读入一个 String 后,我们可以先【查找】该字符串是否存在于vector容器中,如果【不存在】且【长度符合要求(使用String的size()方法)】时,我们将该字符串【添加(vector的push_back()方法)】到vector容器中。
在完成所有数据读入后,我们可以使用vector容器的size()方法来获取所有有效回答数量,输出即可。