注意:set/map自带的iterator lower_bound (const value_type& val);函数比下面这个块十倍
template <class ForwardIterator, class T, class Compare>
ForwardIterator lower_bound (ForwardIterator first, ForwardIterator last,
const T& val, Compare comp);
STD
set/map::erase{
void erase (iterator position);
size_type erase (const value_type& val);//返回删除元素的个数
}
set/map::lower_bound{
iterator lower_bound (const value_type& val);
}
GNU
__builtin_ffs(x):返回x中最后一个为1的位是从后向前的第几位
__builtin_popcount(x):x中1的个数
__builtin_ctz(x):x末尾0的个数
__builtin_clz(x):x前导0的个数
__builtin_parity(x):x中1的奇偶性