【发布时间】:2017-06-22 13:08:35
【问题描述】:
我正在为 testdome https://www.testdome.com/for-developers/solve-question/9880 中给出的测试样本写答案
问题是关于排序搜索的: 实现函数 countNumbers,它接受整数的排序向量并计算小于参数 lessThan 的向量元素的数量。
例如,对于包含 { 1, 3, 5, 7 } 的向量 v,SortedSearch::countNumbers(v, 4) 应该返回 2,因为有两个向量元素小于 4。
我修改代码如下,但测试结果显示有两个失败: 1)sortedVector包含lessThan时的性能测试:超过时间限制 2)sortedVector不包含lessThan时的性能测试:超过时间限制
您能帮忙更新我的代码以解决问题吗?
#include <vector>
#include <stdexcept>
#include <iostream>
class SortedSearch
{
public:
static int countNumbers(const std::vector<int>& sortedVector, int lessThan)
{
int a = 0;
for (size_t i=0; i<sortedVector.size(); i++)
{
if (sortedVector[i]<lessThan)
{
a++;
}
}
return a;
}
};
#ifndef RunTests
int main()
{
std::vector<int> v { 1, 3, 5, 7 };
std::cout << SortedSearch::countNumbers(v, 4);
}
#endif
【问题讨论】:
标签: c++