algorithm
二分查找
1.lower_bound(起始地址,结束地址,要查找的数值) 返回的是数值 第一个 出现的位置。(第一个大于等于 数值 的数的位置)
2.upper_bound(起始地址,结束地址,要查找的数值) 返回的是数值 最后一个 出现的位置。(第一个大于 数值 的数的位置)
3.binary_search(起始地址,结束地址,要查找的数值) 返回的是是否存在这么一个数,是一个bool值。
gcd
__gcd(x,y)辗转相除法求两数的gcd
unique
int tot=unique(a+1,a+n+1)-a-1;//第一种,对数组直接去重
int tot=unique(a+1,a+n+1,cmp)-a-1;//第二种,对结构体去重,可以自定义元素是否相等,比如只判断结构体某一元素