洛谷——P1505 苹果摘陶陶

题目背景

根据2005年的Noip普及组第一题衍生出的一题。

但是有一点点的恶搞成分在里面.....

题目描述

话说去年苹果们被陶陶摘下来后都很生气,于是就用最先进的克隆技术把陶陶克隆了好多份>.<然后把他们挂在树上,准备摘取。

摘取的规则是,一个苹果只能摘一个陶陶,且只能在它所能摘到的高度以下的[b]最高的[/b]陶陶,如果摘不到的话只能灰溜溜的走开了>.<给出苹果数目及每个苹果可以够到的高度和各个陶陶的高度,求苹果们都摘完后剩下多少个陶陶……

输入输出格式

输入格式:

 

第一行为两个数,分别为苹果的数量n和陶陶的数量m(n,m<=2000)

以下的n行,分别为各个苹果能够到的最大高度。

再接下来的m行,分别为各个陶陶的高度。

高度均不高于300。

当然了,摘取的顺序按照输入的“苹果够到的最大高度”的顺序来摘。

 

输出格式:

 

输出仅有一个数,是剩下的陶陶的数量

 

输入输出样例

输入样例#1:
5 5
9
10
2
3
1
6
7
8
9
10
输出样例#1:
3

说明

很容易的基础题哦>.<

不能摘0,等高;

 
 1 #include <algorithm>
 2 #include <iostream>
 3 #include <cstdio>
 4 
 5 #define N 2017
 6 
 7 using namespace std;
 8 
 9 int num_killer,num_be_killed,cnt;
10 int killer[N],be_killed[N];
11 
12 int main()
13 {
14     scanf("%d%d",&num_killer,&num_be_killed);
15     for(int i=1;i<=num_killer;i++)
16         scanf("%d",&killer[i]);
17     for(int i=1;i<=num_be_killed;i++)
18         scanf("%d",&be_killed[i]);
19     sort(be_killed+1,be_killed+num_be_killed+1);
20     for(int i=1;i<=num_killer;i++)
21     {
22         for(int j=num_be_killed;j>=1;j--)
23         {
24             if(killer[i]>be_killed[j]&&be_killed[j])
25             {
26                 be_killed[j]=301;
27                 //killer[i]=0;
28                 cnt++;
29                 break;
30             }
31         }
32     }
33     printf("%d",num_be_killed-cnt);
34     return 0;
35 }

 

posted @ 2017-04-14 20:24  Aptal丶  阅读(1086)  评论(0)    收藏  举报