newcoder 求交集

【算法题集锦之二】--多个集合求交集 这是我之前接的一个私活里遇到的一个问题:根据guanjia 阅读详情
 
链接: https://www.nowcoder.net/acm/contest/76/C
来源:牛客网

给你两个升序排列的集合,求出两个集合的交集。

输入描述:

有多个测试用例,输入到文件结束。
对于每一个测试用例:
第一行输入两个整数n,m(0<n,m<=1000000),分别代表第一个集合和第二个集合的元素的数量。
第二行输入n个整数,表示第一个集合中的元素,元素之间用空格隔开。
第三行输入m个整数,表示第二个集合中的元素,元素之间用空格隔开。
两个集合中的元素范围在[-1000000000,1000000000]区间内。

输出描述:

每个测试用例用一行来输出两个集合的交集的所有元素(元素用空格隔开且按升序排列),若交集为空则输出"empty"。
示例1

输入

2 3
1 3
1 2 3

输出

1 3

备注:

交集为空的情况下,输出"empty"
。

#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
#include <vector>
#include <queue>
using namespace std;
#define f(i,l,r) for(int i=l;i<=r;++i)
#define g(i,l,r) for(int i=l;i>=r;--i)
const int N = 1000001;
typedef long long ll;
ll a[N],b[N],c[N];
int n,m;
int main() 
{
	std::ios::sync_with_stdio(false);
	std::cin.tie(0);
 
	while(cin>>n>>m)
	{
		memset(a,0,sizeof(a)/sizeof(a[0]));
		memset(b,0,sizeof(b)/sizeof(b[0]));
		memset(c,0,sizeof(c)/sizeof(c[0]));
		f(i,1,n)cin>>a[i];
		f(i,1,m)cin>>b[i];
		int h=1,j=1,k=1;
		h=1;

		while(h<=n&&j<=m){
			if(a[h]==b[j])
			{
				c[k++]=a[h];
				h++;j++;
			}
			else if(a[h] > b[j])j++;
			else h++;
		}
        if(k==1){
			cout<<"empty"<<endl;
			continue;
		}
 		f(i,1,k-2)cout<<c[i]<<" ";
		cout<<c[k-1]; 
        
	} 
	return 0;

}
未来的我一定会感谢正在努力的现在的我!




Newcoder 被3整除的子序列 (dp) 链接:https://ac.nowcoder.com/acm/problem/21302 题目描述 给你一个长度为50的数字串,问你有多少个子序列构成的数字可以被3整除 答案对1e9+7取模 输入描述: 输入一个字符串,由数字构成,长度小于等于50 输出描述: 输出一个整数 示例1 输入 132 输出 3 示例2 输入 9 输出 1 示例3 输入 333 输出 7 示例4 输入 123456 输出... 阅读详情

相关推荐

小红书高时效推荐系统背后的技术升级

在小红书 APP 中,推荐系统的实效性对推荐效果有着特别重要的影响,特别是作为 UGC 平台,小红书的推荐系统如果能更快地捕捉用户与笔记之间的变化和联系,就能够给推荐带来更好的效果。在2021年上半年,首页推荐的召回、粗排、精排的主要模块都保持在天级更新的状态,我们通过持续迭代,将召回 CF 渠道、召回索引更新、召回模型/粗精排模型的训练都做到了分钟级更新,为首页推荐的分发效率带来飞跃式提升,并给业务侧带来非常显著的收益。 小红书站内“最近一天内发布的新笔记”在首页的曝光占比一直很高,这段时间更是快速

REDtech_1024的博客 3525

求交集

链接:https://www.nowcoder.net/acm/contest/76/C来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 题目描述 给你两个升序排列的集合,求出两个集合的交集。 输入描述: 有多个测试用例,输入到文件结束。对于每一个测...

蔡军帅 608

点云数据增强及预处理

数据增强: 1. random world flip:沿着x或者y轴,翻转点云 点云的x或者y,要翻转 3d box中心的x或者y,要翻转 3d box的朝向要翻转 point segmentation label,点云的相对顺序没有发生变化 2. random_world_rotation:沿着点云原点,旋转点云 点,x,y,绕z轴旋转 3d box,绕z轴旋转,中心和朝向都要变化 point segmentation label,点云的相对顺序没有发生变化 3. random_world_scaling

huang_victor的博客 4011

Java求两集合中元素交集的四种方法对比总结

hello,你好呀,我是灰小猿,一个超会写bug的程序猿! 最近在做项目的时候有用到对两个集合中的元素进行对比求其交集的情况,因为涉及到的数据量比较大,所以在进行求两个集合中元素交集的时候,就应该考虑到程序运行的时间消耗等问题, 所以写了四种求集合元素交集的方法 今天这篇文章主要是来记录对比一下,这四种方法使用起来的效率问题, 方法一,求两个集合的交集【普通for循环】 这种方法是最普通的进行for循环比较的方法。利用集合的contains方法,来对比第二个集合中是否存在相同的元素的方法,同时将交集结果返回

累计发表博客60余万字,优快云 博客专家、Java 领域优质创作者、华为云享专家、阿里云专家博主。专注分享 Java 优质文章,毕设实战项目开发,全网粉丝10W+ 2万+

Visio 2013安装遇阻?手把手教你搞定注册表权限错误1402(附64位系统特殊处理)

本文详细解析了Visio 2013安装过程中常见的注册表权限错误1402问题,特别是在64位系统下的特殊处理方法。通过分步指导如何修改注册表权限、处理Wow6432Node分支以及使用高级工具如subinacl,帮助用户顺利完成安装并避免常见连带问题。

t8u9v0w1x的博客 545

手把手教你配置RK3588的FFmpeg+RKmpp:从解码到RGA转换的完整避坑指南

本文详细介绍了在RK3588平台上配置FFmpeg+RKmpp进行硬件解码和RGA图像处理的完整流程,包括环境准备、DRM Prime解码输出实战、RGA硬件加速转换技巧以及全链路性能调优。通过具体代码示例和问题排查指南,帮助开发者高效实现视频处理流水线,显著提升性能并降低CPU占用率。

weixin_28366475的博客 473

集合运算(蓝桥杯)

题目描述 给出两个整数集合A、B,求出他们的交集、并集以及B在A中的余集。 输入描述 第一行为一个整数n,表示集合A中的元素个数。   第二行有n个互不相同的用空格隔开的整数,表示集合A中的元素。   第三行为一个整数m,表示集合B中的元素个数。   第四行有m个互不相同的用空格隔开的整数,表示集合B中的元素。   集合中的所有元素均为int范围内的整数,n、m<=1000。 输出描述 第一行按从小到大的顺序输出A、B交集中的所有元素。 第二行按从小到大的顺序输出A、B并集中的所有元素。 第三行按从小

m0_51305283的博客 855

系统安装(kuntaiR522 kvm安装)

鲲泰R522服务器kvm安装rocky

weixin_46396917的博客 1821

如何求集合之间的交集(重复元素)

如果需要求两个集合之间的交集: 1. 并查集 2. 排序+双指针

shuaishuai__的博客 6133

强化学习(Reinforcement Learning)与动态系统控制方法

一个具体的 RBC 的例子是自动驾驶汽车中的交通规则。在训练过程中,代理通过与环境交互获取奖励信号,并学习如何在某个状态下采取最佳的行动,以最大化长期的累积奖励。在化工过程中,通过对生产过程中的温度、压力、流量等参数的控制来实现产品的质量和产量的提高。需要注意的是,以上代码只是一个简单的示例,实际的 MPC 系统可能会更加复杂,并包含更多的模型预测和控制算法来实现更复杂的控制任务。需要注意的是,以上代码只是一个简单的示例,实际的自动驾驶汽车系统可能会更加复杂,并包含更多的规则和条件来确保安全行驶。

AI天才研究院 4064

系统架构设计师重难点知识脑图

大家都知道现在的软考自从变成机考后,越来越难了,教程上的内容不仅全还细,几乎任何内容都有可能考,出题老师主打一个出其不意,比如2024年5月考试,连UML时序图的片段都考,这。软件工程、系统架构基础知识、系统质量属性与架构评估、软件架构的演化和维护、信息系统架构设计、层次式架构设计、云原生架构设计、面向服务架构设计、安全架构设计、大数据架构设计等。所以对于教程上的任何知识点,都需要去记忆。因此我在这里制作了一个脑图,将所有知识点集中在一个脑图中,通过首词组句法,记忆背诵,通过一个个的展开节点,加强记忆。

分享技术干货和灵感、推荐新书和好玩的项目、分享Java面试题 1104

Newcoder练习题

Newcoder 练习题 Programming language: Python 2.7.x 剑指offer66题 (更新中…) 孩子们的游戏 思路:每次拿到小礼品的孩子的位置为 (上一个小孩子的位置+m-1)%(小孩总数),依次循环,直到列表中只有一个元素,输出即可 求1+2…+n 思路:采用递归的形式进行求解 第一个只出现一次的字符 思路:遍历字符串,若在该字符的前后都没有出现该字符,将该...

WUD的博客 672

C#操作MySQL从入门到精通(3)——新建数据库、新建表

我们要首先新建一个数据库,并且在数据库中新建一系列的表来管理数据库。

qq_34059233的博客 951

NewCoder 剖分

NewCoder 剖分。 树上差分

qq_45925322的博客 379

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

NewCoder Weekly Contest 46

d个球有d-1个空隙,这里面可以利用隔板插进空隙将球分成y组 有C(y-1,d)种方案,由于盒子可以为空,则为 C(y + d - 1, d),这是对于x的一个因子i的情况,由于x有很多因子,每一个因子都有方法数C(y + d - 1, d),则彼此之间累乘即可。倍数的灯的开闭状态,那我们就枚举1~n盏灯,如果i是x的因子,就改变x的开闭状态,可以通过50%的数据,IOI赛制下也能拿分。次,这就是破局的关键,那么如果我们按照猫粮数量从小到大排序,必然前面的猫粮数量小于k,后面的猫粮数量大于k,

m0_75081311的博客 1154

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

NewCoder:求最小公倍数

正整数A和正整数B 的最小公倍数是指 能被A和B整除的最小的正整数值,设计一个算法,求输入A和B的最小公倍数。

SNAYi 268

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Newcoder 贝伦卡斯泰露(DFS)

Newcoder 贝伦卡斯泰露(DFS) 题意:给n个元素组成的数组(n为偶数),问能否分成两个长度n/2的相同子序列. 思路:DFS,确立好参数,分两种情况:当前元素匹配(序列C中要与序列B匹配的数)则将该元素加入到C,继续DFS,若不匹配或相等仍选择不匹配,则将该元素加入到B中,继续DFS #include<iostream> using namespace std; int a[...

Harris-H的博客 698

newcoder刷题笔记一

newcoder刷题笔记一1、计算a+b2、A+B(2)3、A+B(3)4、A+B(4)5、A+B(5) 之前在newcoder上简单刷过几道题,因为没什么经验都是网上搜来的答案,现在汇总一下,以便将来参考。 1、计算a+b 输入描述: 输入包括两个正整数a,b(1 <= a, b <= 10^9),输入数据包括多组。 输出描述: 输出a+b的结果 示例1 输入 1 5 10 20 输出 6 30 Python3 脚本 while True: try:

juluwangriyue的博客 672

栈的压入、弹出序列 ---- newcoder

题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。 假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的) newcoder 题目链接 题解 什么意思呢?简单的说就是给你序列,让你通过一...

Eric_qiushui的博客 296

newcoder

1. function reserve(str){ str=str.split(' '); str=str.reverse() console.log(str.join(' ')) } reserve("it's a dog") 2.两数之和 /** * @param {number[]} nums * @param {number} target * @return {nu...

from_shanghai的博客 295

NewCoder:计算糖果

A,B,C三个人是好朋友,每个人手里都有一些糖果,我们不知道他们每个人手上具体有多少个糖果,但是我们知道以下的信息: A - B, B - C, A + B, B + C. 这四个数值.每个字母代表每个人所拥有的糖果数. 现在需要通过这四个数值计算出每个人手里有多少个糖果,即A,B,C。这里保证最多只有一组整数A,B,C满足所有题设条件。

SNAYi 191

NewCoder:Fibonacci数列

Fibonacci数列是这样定义的:F[0] = 0 F[1] = 1 for each i>=2:F[i] = F[i - 1] + F[i - 2];因此,Fibonacci数列就形如:0,1,1,2,3,5,8,13,...,在Fibonacci数列中的数我们称之为Fibonacci数。给你一个N,你想让其变为一个Fibonacci数,每一步你可以把当前数字X变为X-1或者X+1,在你这给你一个数N求最少需要多少步可以变为Fibonacci数。

SNAYi 204

Newcoder 39 C.回文串的交集(Manacher+组合数学)

Description 给一个长为nnn 的只含小写字母的字符串 设总共有$ x$ 个回文连续子串 在这$ x$ 个子串中任选不同的两个,有公共部分的方案数 答案对 100000000710000000071000000007 取模 Input 第一行一个正整数nnn 第二行一个长为nnn的字符串 (n≤2⋅106)(n\le 2\cdot 10^6)(n≤2⋅106) output 输出一个整数...

ZSQ 547

NewCoder:链表分割

编写代码,以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前 给定一个链表的头指针 ListNode* pHead,请返回重新排列后的链表的头指针。注意:分割以后保持原来的数据顺序不变。

SNAYi 270

NewCoder 排队

NewCoder 排队。 数学(逆序对公式)

qq_45925322的博客 295

newcoder【链表分割】

newcoder【链表分割】 题目描述: 编写代码,以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前。 给定一个链表的头指针 ListNode* pHead,请返回重新排列后的链表的头指针。注意:分割以后保持原来的数据顺序不变。 来源:牛客(newcoder) 链接:https://www.nowcoder.com/practice/0e27e0b064de4eaca...

weixin_44091229的博客 206
上一篇: hiho 1015 : KMP算法
下一篇: cd A Colourful Prospect
PragIncor
博客等级 码龄9年 1粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值