传统弱校HFUT的蒟蒻,真相只有一个

BUPT复试专题—排序(2009)

题目描述

查找序列a 中小于 b 的第 i 个数的数的个数

输入

输入有多组,每组四行
第一行:序列a个数N
第二行:(序列a的)N个数,升序排列
第三行:序列b个数M

第四行:(序列b的)M个数,升序排列

第五行:i   表示b中第i个数

输出

对序列a ,输出小于 b 的第 i 个数的数的个数

样例输入

3
1 2 3
4
1 2 3 4
4

样例输出

3

来源

2009机考C题 

#include<algorithm>
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
    int n=0;
    while(cin>>n)
    {
        int m=0,a[100],b[100],key=0
        for(int i=0;i<n;i++)
            cin>>a[i];
        cin>>m;
        for(int i=0;i<m;i++)
            cin>>b[i];
        cin>>key;
        int num=b[key-1],count=0;
        if(a[0]>=num)
        {
            cout<<"0"<<endl;
            continue;
        }
        int *t=lower_bound(a,a+n,num);
        for(int i=0;a[i]<*t;i++)
        {
            count++;
        }
        cout<<count<<endl;
    }
    return 0;
}

 

posted @ 2018-03-20 11:50  未名亚柳  阅读(155)  评论(0编辑  收藏  举报