upper_bound and lower_bound

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int b[11] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    int a[11] = {0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 4};
    printf("%d\n", ((int)a - 7208600)/sizeof(int));
    ///upper_bound来说,返回的是被查序列中第一个大于查找值的指针,也就是返回指向被查值>查找值的最小指针
    printf("%d\n", ((int)upper_bound(a, a + 11, 2) - 7208600)/sizeof(int));
    ///lower_bound则是返回的是被查序列中第一个大于等于查找值的指针,也就是返回指向被查值>=查找值的最小指针。
    printf("%d\n", ((int)lower_bound(a, a + 11, 2) - 7208600)/sizeof(int));
    cout << upper_bound(a, a + 11, 2) - a << '\n';
    cout << lower_bound(a, a + 11, 2) - a << '\n';
    return 0;
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
06-27 18:00
点赞 评论 收藏
分享
05-23 19:02
吉林大学 Java
点赞 评论 收藏
分享
龙珠传说:nb,公务员解约不需要支付违约金吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务