动物之森-小红书2024笔试(codefun2000)

news2024/11/19 20:24:33

题目链接
动物之森-小红书2024笔试(codefun2000)

题目内容

塔子哥最近在玩一款叫做“动物之森”的四字开放游戏世界。由于塔子哥氪金了,所以他在游戏中拥有很多个宝箱,每个宝箱里都装着一些他收集的宝石。每一种类型的宝石都有不同的作用。
有一天,塔子哥在游戏中遇到了另一位玩家古德拜。古德拜告诉塔子哥,如果他的宝箱满足以下3个条件,那么他就能获得一个成就奖励。塔子哥非常好奇,于是他决定尝试一下。
古德拜告诉了塔子哥以下3个条件:
1、每个宝箱里不会有两颗相同的宝石。
2、每一种类型的宝石,只出现在一个宝箱中或者出现在所有宝箱中。
3、每个宝箱长度一样
塔子哥是一位收藏玩家,所以他很想要这个成就奖励。
现在问题来了:塔子哥的这些宝箱是否同时满足上述3个条件呢?他能否获得成就奖励呢?

输入描述

第一行三个整数,以空格分开,分别表示

输出描述

对于每组测试数据,如果小明的这些袋子满足全部三个条件,则在一行中先输出 Yes ,然后按编号从小到大输出所有宝箱中都有的宝石类型
假如没有任何一种类型的宝石为所有宝箱共有,则仅需要输出 Yes 。
如果塔子哥的这些宝箱不满足以上的所有条件,则输出 NO。

样例1

输入

3
1
3 50 40 30
3
2 49 50
3 58 49 50
1 49
5
3 90 89 63
2 89 63
2 63 89
3 89 32 63
3 86 63 89

输出

Yes 30 40 50
NO
NO

提示

哈希表+模拟

题解1

#include<bits/stdc++.h>
using namespace std;

int T, n, t[110], a[110], res[110]; // res[i]保存所有宝箱中都有的宝石类型

int main(){
	scanf("%d", &T);
	while(T--){
		scanf("%d", &n);
		bool flag = true;
		map<int,int> hmap; // 由于需要按编号从小到大输出所有宝箱中都有的宝石类型,因此要保证key的递增性 
		int cnt = 0;
		for(int i = 1; i <= n; i++){
			scanf("%d", &t[i]);
			if(i > 1 && t[i] != t[i - 1]) flag = false; // 宝箱长度不一样 
			set<int> st;
			for(int j = 1; j <= t[i]; j++){
				scanf("%d", &a[i]);
				if(hmap.count(a[i]) ==0) hmap[a[i]] = 1;
				else hmap[a[i]]++; 
				st.insert(a[i]);
			}
			if(int(st.size()) < t[i]) flag = false; // 一个宝箱里面至少有两颗相同的宝石 
		}
		if(!flag) {
			printf("NO\n");
			continue;
		}
		for(auto& it : hmap){
			if(it.second != 1 && it.second != n){ // 不满足每一种类型的宝石,只出现在一个宝箱中或者出现在所有宝箱中 
				flag = false;
				break;
			} else if(it.second == n) res[++cnt] = it.first; // 某类宝石出现在所有宝箱中 
		}
		if(flag){
			printf("Yes");
			if(cnt) {
				for(int i = 1; i <= cnt; i++) {
					printf(" ");
					printf("%d", res[i]);
				}
			}
			printf("\n");
		}else {
			printf("NO\n");
		}
	}
	return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1955079.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java--jvm虚拟机(都是要点)

请带着以下问题&#xff0c;学习并理解jvm 问题一&#xff1a; 为什么fullGC会对系统性能有影响&#xff1f;youngGC却几乎没有&#xff1f; 问题二&#xff1a; outofmemory是什么异常&#xff1f;什么时候会出现&#xff1f;如何处理&#xff1f; 问题三&#xff1a; 线程…

鸿蒙 HarmonyOS NEXT端云一体化开发-云函数篇

前言 TODO&#xff1a;新建项目和应用&#xff0c;开通云函数服务&#xff08;AGC&#xff09;端侧开发&#xff1a;Arkts界面开发云测开发&#xff1a;云函数、认证服务、云存储、云数据库 一、登录 地址&#xff1a;https://id1.cloud.huawei.com/CAS/portal/loginAuth.htm…

Nginx周末部署

背景 Nginx是本人学习的一类中间件&#xff0c;上次完成了vue的搭建&#xff0c;所以顺便把项目加入Nginx吧 1. 镜像拉取与测试 查询dockerHub&#xff0c;选择最新最稳定的版本 docker pull nginx:stable-perl 执行下载 docker run -d --name mynginx -p 8080:80 -v D:\IM…

【Kubernetes】配置管理(一):ConfigMap

配置管理&#xff08;一&#xff09;&#xff1a;ConfigMap 1.配置管理2.使用 ConfigMap 管理 Pod 的配置信息2.1 创建 ConfigMap2.1.1 在命令行中通过指定 ConfigMap 的参数进行创建2.1.2 通过指定的配置文件创建 ConfigMap2.1.3 通过一个文件内的多个键值对创建 ConfigMap2.1…

C++数据结构重要知识点(3)(红黑树及其插入操作)

1.红黑树和AVL树的区别 红黑树和AVL树都是平衡树&#xff0c;都是为了解决二叉搜索树的劣势。其中&#xff0c;AVL树的左右子树的高度差不超过1&#xff0c;而红黑树的最长路径不超过最短路径的二倍&#xff0c;也就是说&#xff0c;红黑树是一种近似平衡&#xff0c;而AVL树是…

【设计模式】(万字总结)深入理解Java中的创建型设计模式

1. 前言 在软件开发的世界里&#xff0c;设计模式是一种被广泛接受并应用的解决方案。它们不仅仅是代码的设计&#xff0c;更是对问题的思考和解决的方法论。在Java开发中&#xff0c;特别是在面向对象的编程中&#xff0c;设计模式尤为重要。创建型设计模式&#xff0c;作为设…

JavaScript安全编程宝典【万字详解】

文章目录 简介基本说明特点两种使用方式在script中写使用script标签引入JS文件 数据类型介绍特殊值 运算符算数运算符赋值运算符逻辑运算符&#xff1a;条件运算符 数组的定义基本使用数组的遍历 函数含义函数定义方式基本语法代码示例 细节和注意事项 自定义对象Object形式{} …

解决mysql数据库表读取中文乱码问题

本文目录 0、省流1、问题出现2、问题排查3、结论 0、省流 在服务器上创建数据库服务时&#xff0c;使用的sql脚本加载的数据库表&#xff0c;其中脚本中有一些预设的测试数据包含中文汉字&#xff0c;由于linxu服务器控制台默认编码是lantin1&#xff0c;导致中文通过该编码方…

鸿蒙HarmonyOS开发:多种内置弹窗及自定义弹窗的详细使用指南

文章目录 一、消息提示框&#xff08;showToast&#xff09;1、导入模块2、语法3、参数4、示例5、效果 二、对话框&#xff08;showDialog&#xff09;1、导入模块2、语法3、参数4、示例5、效果 三、警告弹窗&#xff08;AlertDialog&#xff09;1、语法2、参数3、AlertDialogP…

JDBC(Java访问数据库)

Java Database Connectivity&#xff1a;Java访问数据库的解决方案 JDBC定义了一套标准接口&#xff0c;即访问数据库的通用API&#xff0c; 不同的数据库厂商根据各自数据库的特点去实现这些接口。 JDBC希望用相同的方式访问不同的数据库&#xff0c;让具体的数据库操作与数…

科普文:科普文:springcloud之-Hystrix服务容错

Hystrix概念 Hystrix 服务容错保护 的概念和说明 这就是大名鼎鼎的&#xff1a;豪猪 豪猪的英文就是&#xff1a;Hystrix&#xff0c;国外一些大牛的程序员在给自己的架构起名字的时候&#xff0c;往往就这么特别。哪天咱们中国人自己也能写出些架构&#xff0c;咱们就按照中…

⚒linux通过shell脚本上传文件至minio中

&#x1f534;大家好&#xff0c;我是雄雄&#xff0c;欢迎关注微信公众号&#xff1a;雄雄的小课堂 前言 之前数据库是备份到了七牛云上了&#xff0c;但是眼看着数据库文件越来越大&#xff0c;七牛云里面的余额越来越少&#xff0c;所以&#xff0c;转移阵地。 家里的nas&…

昇思25天学习打卡营第20天|munger85

GAN图像生成 生成对抗网络中是为了让我们生成的东西向期望的那样&#xff0c;就是为了让生成的东西很像&#xff0c;真的&#xff0c;例如用它来画画。就是描述整个网络的逻辑和目的&#xff0c;它有两部分组成&#xff0c;一个是生成器&#xff0c;一个是辨别器。他希望的是辨…

C++程序编程中的 SetWindowLong 函数的几个常见用途(附源码)

目录 1、API函数SetWindowLong说明 2、修改窗口风格 3、给窗口指定新的窗口消息处理函数,以拦截窗口消息 4、可以给窗口设置关联的UserData数据,方便在窗口内部使用这些数据 5、64位程序中需要使用SetWindowLongPtr 6、最后 C++软件异常排查从入门到精通系列教程(专栏…

Sping项目只能勾选17和21 (已解决) 导致的后续Invalid bound statement (not found):

问题发现 今天创建项目的时候发现 idea初始化spring的时候选择不了Java8 解决方案:替换URL为 https://start.aliyun.com/ 将IDEA页面创建Spring项目&#xff0c;其实是访问spring initializr去创建项目。故我们可以通过阿里云国服去间接创建Spring项目。 将https://start.spr…

TortoiseSVN安装使用教程(超详细)

目录 前言1. 下载2. 安装2.1 安装TortoiseSVN&#xff08;看图操作&#xff09;2.2 安装语言包&#xff08;看图操作&#xff09; 3. 使用3.1 版本库浏览器3.2 其他教程 前言 TortoiseSVN&#xff1a;&#xff08;俗称小乌龟&#xff09;Subversion版本控制系统的一个免费开源客…

Pytorch基础:Tensor的view方法(非连续张量也可以使用view)

相关阅读 Pytorch基础https://blog.csdn.net/weixin_45791458/category_12457644.html?spm1001.2014.3001.5482 在Pytorch中&#xff0c;view是Tensor的一个重要方法&#xff0c;用于返回一个改变了形状&#xff0c;但数据和数据的顺序与原来一致的新张量&#xff0c;但是新张…

夸克Android一面凉经(2024)

夸克Android一面凉经(2024) 笔者作为一名双非二本毕业7年老Android, 最近面试了不少公司, 目前已告一段落, 整理一下各家的面试问题, 打算陆续发布出来, 供有缘人参考。今天给大家带来的是《夸克Android一面凉经(2024)》。 面试职位: 智能信息-客户端开发工程师-夸克小说 技术一…

20240728 每日AI必读资讯

Google Gemini 聊天机器人更新 可以免费使用Gemini 1.5 Flash 1. 引入Gemini 1.5 Flash模型&#xff1a; • 提供更快和更高质量的响应。 • 提升推理和图像理解能力。 • 上下文窗口扩大到 32Ktokens&#xff0c;允许进行更长的对话和处理更复杂的问题。 • 即将支持通过 Goo…

【你也能从零基础学会网站开发】 SQL结构化查询语言应用基础-- SQL Server数据库开发创建表之FOREIGN KEY外键约束完全详解最详细!

&#x1f680; 个人主页 极客小俊 ✍&#x1f3fb; 作者简介&#xff1a;程序猿、设计师、技术分享 &#x1f40b; 希望大家多多支持, 我们一起学习和进步&#xff01; &#x1f3c5; 欢迎评论 ❤️点赞&#x1f4ac;评论 &#x1f4c2;收藏 &#x1f4c2;加关注 浅谈FOREIGN K…