| 比赛 | 
    20220426小练习USACO Feb07 | 
    评测结果 | 
    AAAAAAAAAA | 
    | 题目名称 | 
    买一送一 | 
    最终得分 | 
    100 | 
    | 用户昵称 | 
    hnzzlza | 
    运行时间 | 
    1.482 s  | 
    | 代码语言 | 
    C++ | 
    内存使用 | 
    4.07 MiB  | 
    | 提交时间 | 
    2022-04-26 20:13:01 | 
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
int m,n,a[10001],b[10001],max_a,max_b,max_ai,max_bi,tot;
void _max(){
	for(int i=0;i<n;++i){
		if(max_a<a[i]){
			max_a=a[i];
			max_ai=i;
		}
	}
	for(int i=0;i<m;++i){
		if(max_b<b[i]&&b[i]<max_a){
			max_b=b[i];
			max_bi=i;
		}
	}
}
void t(){
	cout<<"\n\n";
	for(int i=0;i<n;++i)cout<<a[i]<<' ';
	cout<<"\n";
	for(int i=0;i<m;++i)cout<<b[i]<<' ';
	cout<<'\n';
}
int main(){
	freopen("buyfree.in","r",stdin);
	freopen("buyfree.out","w",stdout);
	cin>>n>>m;
	for(int i=0;i<n;++i){
		cin>>a[i];
		if(max_a<a[i]){
			max_a=a[i];
			max_ai=i;
		}
	}
	for(int i=0;i<m;++i){
		cin>>b[i];
		if(max_b<b[i]&&b[i]<max_a){
			max_b=b[i];
			max_bi=i;
		}
	}
	for(int i=0;i<n;++i){
//		cout<<"\n\n"<<"a:"<<a[max_ai]<<"\nb:"<<b[max_bi]<<"\n\n";
//		t();
		if(b[max_bi]>=a[max_ai])b[max_bi]=-1;
		if(a[max_ai]!=-1)tot++;
		if(b[max_bi]!=-1)tot++;
		a[max_ai]=-1;
		b[max_bi]=-1;
		max_a=0;max_b=0;max_ai=0;max_bi=0;
		_max();
	}
	cout<<tot;
	return 0;
}