lower_bound

 1 #include <stdio.h>
 2 #include <string.h>
 3 #include <algorithm>
 4 using namespace std;
 5 
 6 int main()
 7 {
 8     int n,z;
 9     int i,j,k;
10     int a[1005];
11     scanf("%d",&n);
12     for(i=1;i<=n;i++)
13         scanf("%d",&a[i]);
14     sort(a+1,a+1+n);
15     scanf("%d",&z);
16     int xiabiao1=upper_bound(a+1,a+1+n,z)-a;//找大于z的第一个数下标
17     int xiabiao2=lower_bound(a+1,a+1+n,z)-a;//找大于等于z的第一个数下标
18     printf("%d %d\n",xiabiao1,xiabiao2);
19     return 0;
20 }
21 /*
22 //下标从0开始
23 int main()
24 {
25     int n,z;
26     int i,j,k;
27     int a[1005];
28     scanf("%d",&n);
29     for(i=0;i<n;i++)
30         scanf("%d",&a[i]);
31     sort(a,a+n);
32     scanf("%d",&z);
33     int xiabiao1=upper_bound(a,a+n,z)-a;
34     int xiabiao2=lower_bound(a,a+n,z)-a;
35     printf("%d %d\n",xiabiao1,xiabiao2);
36     return 0;
37 }*/
View Code

 

posted @ 2015-08-30 18:37  cyd2014  阅读(125)  评论(0编辑  收藏  举报