【晴问算法】入门篇—贪心算法—整数配对

 题目描述

有两个正整数集合S、T,其中S中有n个正整数,T中有m个正整数。定义一次配对操作为:从两个集合中各取出一个数a和b,满足a∈S、b∈T、a≤b,配对的数不能再放回集合。问最多可以进行多少次这样的配对操作。

 输入描述

输出描述

输出一个整数,表示最多的配对操作次数。

样例1

输入

3 3

2 5 3

3 3 4

输出

解释

2与其中一个3配对,3与另一个3配对,5无法和4配对。因此最多配对两次。

#include<bits/stdc++.h>
using namespace std;
const int MAXN = 100;//代码习惯书写,定义一个常量,便于修改长度
int s[MAXN]; 
int t[MAXN];

int main(){
	int n, m;
	cin >> n >> m;
	for(int i=0;i<n;i++){
		cin >> s[i];
	}
	for(int i=0;i<m;i++){
		cin >> t[i];
	}
	sort(s,s+n);//将数组s和t分别从小到大排序
	sort(t,t+m);
	int count = 0;
	for(int i=0;i<n;i++){//外循环从s开始遍历
		bool found = false; //在内循环每次都初始默认没找到
		for(int j=0;j<m;j++){
			if(s[i] <= t[j]){//满足题意a<=b
				found = true;//找到了
				count ++;//配对数加一
				break;//找到了就跳出内层循环,i++,j++,继续下一轮往后查找
			}
		}
		if(!found){//如果都没找到直接跳出
			break;
		}
	}
	printf("%d",count);
return 0;
}

相关推荐

  1. 算法入门贪心算法—最大组合整数

    2024-03-18 22:16:02       40 阅读
  2. 算法入门—字符串处理—回文字符串

    2024-03-18 22:16:02       38 阅读
  3. 算法算法初步—散列—整数出现次数

    2024-03-18 22:16:02       39 阅读
  4. 算法入门—数学问题—西西弗斯串

    2024-03-18 22:16:02       42 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-18 22:16:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-18 22:16:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-18 22:16:02       82 阅读
  4. Python语言-面向对象

    2024-03-18 22:16:02       91 阅读

热门阅读

  1. kali wpscan 命令

    2024-03-18 22:16:02       43 阅读
  2. 自动部署SSL证书到阿里云腾讯云CDN

    2024-03-18 22:16:02       42 阅读
  3. 【CSP考点回顾】C++标准库加速输入输出

    2024-03-18 22:16:02       48 阅读
  4. 通过Https请求可以返回哪些数据?

    2024-03-18 22:16:02       41 阅读
  5. playwright test打开新的浏览器窗口和关闭当前窗口

    2024-03-18 22:16:02       38 阅读
  6. C语言基础知识笔记

    2024-03-18 22:16:02       47 阅读
  7. 字节一面二面三面四面

    2024-03-18 22:16:02       50 阅读
  8. 大模型在自动驾驶决策系统中的前沿应用

    2024-03-18 22:16:02       42 阅读
  9. kafka什么情况下会认为发送失败进而去重试

    2024-03-18 22:16:02       46 阅读
  10. 【力扣】75.颜色分类

    2024-03-18 22:16:02       43 阅读
  11. 机械产品CE-MD认证测试项目介绍

    2024-03-18 22:16:02       44 阅读