- 苹果摘陶陶
- @ 2018-09-03 21:26:22
按说是对的啊,可是只有20分
C++
#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a[1999],b[1999],n,m,tot,i,j;
    cin>>n>>m;
    for (i=0;i<n;i++) cin>>a[i];
    for (i=0;i<m;i++) cin>>b[i];
    tot=m;//摘一个减一个
    sort(b,b+m);//排序,方便摘苹果
    for (i=0;i<n;i++)
    for (j=m;j>-1;j--)
    if (a[i]>=b[j] && b[j]!=0)//能摘到且高度不为0就摘
    {
        b[j]=0;//摘过了就把高度变为0,下次就摘不了了
        tot--;//剩余苹果数-1
        break;//不再继续摘
    }
    cout<<tot<<endl;
    return 0;
}
1 条评论
- 
  ttbr5145 LV 5 @ 2018-09-03 21:31:54改了一下,80分 
 
 #include<bits/stdc++.h>
 using namespace std;
 int main()
 {
 int a[1999],b[1999],n,m,tot,i,j;
 cin>>n>>m;
 for (i=0;i<n;i++) cin>>a[i];
 for (i=0;i<m;i++) cin>>b[i];
 tot=m;
 sort(b,b+m);
 for (i=0;i<n;i++)
 for (j=m;j>-1;j--)
 if (a[i]>=b[j] && b[j]!=0)//这里有改动,">="改成">"
 {
 b[j]=0;
 tot--;
 break;
 }
 cout<<tot<<endl;
 return 0;
 }
 
- 1