问一个关于upper_bound的问题
  • 板块学术版
  • 楼主焚魂
  • 当前回复10
  • 已保存回复10
  • 发布时间2024/9/4 19:58
  • 上次更新2024/9/4 22:43:04
查看原帖
问一个关于upper_bound的问题
206423
焚魂楼主2024/9/4 19:58

假如说我要自定义函数用upper_bound来求数组中第一个能被value整除的数,此时我用自定义函数加upper_bound怎么都会找不出来,比如说:

#include<iostream>
#include<algorithm>

using namespace std;

bool cmp(const int& val,const int& e) {
	return (e%val) == 0;
} 

int a[7] = {0,2,4,5,7,9};

int main() {
	int key = upper_bound(a+1,a+6,2,cmp)-a;
	cout << key;
	
	return 0;
}

此时输出的是6,也就是找不到。 但是也有例外,假如说我把

upper_bound(a+1,a+6,2,cmp)

里的2换成5就能找到,这是为什么呢?qaq

2024/9/4 19:58
加载中...