题目背景
根据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 }