gpt4 book ai didi

C++ 11查找总和>阈值的 vector 的最短前缀的方法

转载 作者:行者123 更新时间:2023-11-28 03:17:01 25 4
gpt4 key购买 nike

如果我有一个 vector<int> , 什么是简洁的 C++11 方法来找到最短的前缀为 sum > threshold ?

最佳答案

template <class Iter>
Iter find_prefix(Iter first, Iter last,
typename std::iterator_traits<Iter>::value_type threshold) {
Iter tmp = first;
while (tmp != last) {
if (threshold <= *tmp)
return ++tmp;
else
threshold -= *tmp++;
}
return first;
}

这适用于任何算术类型和由前向迭代器表示的任何值序列,而不仅仅是由 vector 管理的序列。

关于C++ 11查找总和>阈值的 vector 的最短前缀的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16573394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com