输入文件(pea.in)
第一行两个正整数m和n(n<=100,m<=20),m为桃子的总数,n为朋友人数。
第二行m个正整数,分别表示每个桃子的高度(每个桃子高度不超过300厘米)。
第三行n个正整数,分别表示每个朋友伸手能达到的高度(每个朋友伸手所能达到的最大高度不超过300厘米)。
输出文件(pea.out)
一个整数,表示所有朋友最多能摘到的桃子总数。
#include<stdio.h>
int partition(int a[],int low,int high)
{
int key;
key=a[low];
while(low<high)
{
while(low<high&&a[high]>=key) high--;
a[low]=a[high];
while(low<high&&a[low]>=key) low++;
a[high]=a[low];
}
a[low]=key;
return low;
}
void QSort(int a[],int low,int high)
{
int loc;
if(low<high)
{
loc=partition(a,low,high);
QSort(a,low,loc-1);
QSort(a,loc+1,high);
}
}
void pea()
{
int i,j=0,m,n,k=0;
int pea[100],person[20];
scanf("%d %d",&m,&n);
for(i=0;i<m;i++)
scanf("%d",&pea[i]);
getchar();
for(i=0;i<n;i++)
scanf("%d",&person[i]);
QSort(pea,0,m-1);
QSort(person,0,n-1);
for(i=0;i<20;i++)
{
if(person[i]>pea[j])
{
k++;j++;
if(person[i]>pea[j]){k++;j++;}
}
}
printf("%d",k);
}
int main()
{
freopen("pea.in","r",stdin);
freopen("pea.out","w",stdout);
pea();
return 0;
}
麻烦帮忙看下程序