题目链接:点击打开链接
#include<stdio.h>
#include<algorithm>
using namespace std;
int w[50010],d[50010];
int main()
{
int n,m,i,u;
scanf("%d %d%d",&n,&m,&w[0]);
for(i=1;i<n;i++)
{
scanf("%d",&w[i]);
if(w[i]>w[i-1])
w[i]=w[i-1];
}
for(i=0;i<n;i++)
d[i]=w[n-i-1];
int s=0;
i=0;
while(m--)
{
scanf("%d",&u);
int p=lower_bound(d+i,d+n,u)-d;
if(i!=n)
{
if(p!=n)
{
s++;
i=p+1;
}
else
{
i=n;
}
}
}
printf("%d\n",s);
return 0;
}