- 113 名前:デフォルトの名無しさん mailto:sage [2021/04/06(火) 06:59:06.97 ID:rUOwZVXJ.net]
- 質問ですが
std::vector<SomeBigObject> arr; std::vector<int> indices; というデータがあり、 SomeBigObjectは大小比較可能だがarr自体は未ソートで、 for (int i = 0; i < N; i++) { indices[i] = i; } auto cmpFunc = [](int a, int b)->bool{ return (arr[a] < arr[b]); } std::sort(indices.begin(), indices.end(), cmpFunc); としてindices上で間接的にソートされているとき、 指定されたSomeBigObject x以上の値が現れるarr[i]の最小のiを高速に取得するには どうづればSTLでやるには良いですのん?
|

|