Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >C++信奥教学PPT:CSP_J_算法之贪心算法

C++信奥教学PPT:CSP_J_算法之贪心算法

作者头像
一枚大果壳
发布于 2024-04-24 09:53:43
发布于 2024-04-24 09:53:43
1450
举报
文章被收录于专栏:编程驿站编程驿站

餐厅评级(Restaurant Ratings, North America-Rocky Mountain 2014,LA6872)旅行网站设计了一个餐馆评级系统,每个餐馆都由n(1≤n≤15)个评论家来打分,每人打一个正整数的分数(越高越好)。餐馆的排名规则是先按照各个评论家的打分总分(不超过30)排序。如果总分相同,就按照1~n这n个评论家的n个打分的字典序排序。现在给出一个餐馆的得分,计算按照以上排名规则,排名不超过这个得分的所有可能的打分结果的个数。输出保证可用64位有符号整数存放。

锁着的宝藏(Locked Treasure, North America-Rocky Mountain 2014,LA6873)有n(1≤n≤30)个强盗把宝藏锁在一屋内,必须至少有m(1≤m≤n)个一致同意才能去取宝藏。他们在门上放很多锁,必须同时打开才能开门。每个锁可以配不超过n把钥匙,分别发给一些强盗。一组强盗当且仅当其中有人有这把锁的钥匙时才能打开这把锁。给出n和m,计算最少需要多少把锁才能保证:在钥匙分配合理的前提下,任何组强盗只有在人数不少于m的情况下才能打开锁宝藏的门。举例来说,如果n=3,m=2,需要3把锁就行了。锁1的钥匙给强盗1和2,锁2的钥匙给强盗1和3,锁3的钥匙给强盗2和3。没有一个强盗能独自打开锁,但是任何两个强盗组成一组就可以打开所有的锁。需要思考一下为什么2把锁不能满足条件。

人名追踪(What's In A Name?,North America-East Central NA 2001,LA2354)FBI正在监控一个犯罪窝点,里面有n(n≤20)个嫌疑人,都有唯一ID。FBI记录了一系列按照时间顺序排列的人员进出(使用人名)的情况,以及窝点向外发送消息的记录(使用ID)。所有的ID以及人名都会在记录中出现,一开始窝点是空的。所有的人名和ID都只包含最多20个小写字母。根据这些记录计算出ID和人名的对应关系,按照人名的字典序输出。如果根据记录无法确定一个人名对应的ID,就输出“???”作为ID。

字母排序(Sorting It All Out,North America-East Central NA 2001,LA2355)对于前n个大写字母(2≤n≤26),输入m个形如A<B的关系,表示字母A排在B前面。根据输入顺序对n个大写字母按照上文给定的顺序排序并且输出结果。如果无法确定顺序或者给定的m个关系互相矛盾,也输出相应的结果(具体输出格式请参考原文)。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-04-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程驿站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
C++信奥教学PPT:CSP_J_算法之回溯算法
一、卫星信号(Ping! North America-Mid-Atlantic USA 2013, LA6484)你正在跟踪一些卫星,每个都会以固定的间隔发出Ping信号,每种信号的信号间隔都是唯一的。但是Ping信号会互相抵消:如果在一个时间点同时收到偶数个信号,那么你什么也听不到。如果是奇数个,你会收到一个Ping信号。在第0时间点,所有卫星都会发信号,之后以各自的间隔来发送。给出一个长度在[2,1000]区间内的Ping信号序列,从中确定能听到的那些卫星的信号间隔。给出的信号序列,有可能不够长,导致某些卫星除了0时间点之外收不到第二个信号。这些卫星的信号间隔不需要计算。
一枚大果壳
2024/04/25
1660
C++信奥教学PPT:CSP_J_算法之回溯算法
C++信奥教学PPT:CSP_J_算法之倍增算法
1、股市追捕(Stock Chase, Africa/Middle East-Africa and Arab 2009, LA4739)股票市场需要禁止那种导致一个公司直接或者间接的控股自己的购买行为。例如,A公司购买了B公司的股票,B购买C,C再买了A。前面两个合法。但是第3个就应该被拒绝,因为这样会导致3家公司间接对自身控股。给出按照时间顺序排序的购买交易,你的程序需要一次读入并且拒绝上述非法交易,其他的交易都要接受。给出公司的个数N(0<N≤234)以及T(0<T≤100000)个交易:每个交易给出整数A、B(0<A,B≤N),表示A请求购买B的股票。输出要被拒绝的交易个数。
一枚大果壳
2024/04/24
1790
C++信奥教学PPT:CSP_J_算法之倍增算法
C++信奥教学PPT:CSP_J_算法之双指针算法(中)
1、⼀个⻓度为 n-1 的递增排序数组中的所有数字都是唯⼀的,并且每个数字都在范围0~n-1 之内。在范围 0~ n-1 内的 n 个数字中有且只有⼀个数字不在该数组中,请找出这个数字。
一枚大果壳
2024/04/18
1270
C++信奥教学PPT:CSP_J_算法之双指针算法(中)
C++信奥教学PPT:第二讲:CSP_S_数据结构之倍增(ST)表
一、作家俱乐部(The Writer's Club, Africa/Middle East-Arab and North Africa 2007, LA4091)一个网站上有许多作家,每个作家都被许多读者所喜欢。如果一个读者喜欢一个作家,他也有可能同时喜欢这个作家喜欢的其他作家的作品。例如,如果作家John喜欢Alice写的书,那么喜欢John的读者也有可能喜欢Alice的书。进一步来说,网站希望给喜欢John的读者推荐Alice以及Alice喜欢的作家及Alice喜欢的作家喜欢的作家,如此等等。当然不能给读者推荐已经喜欢的作家。输入T(T<100000)个读者以及N个作家(N≤100),以及喜欢每个作家的人的姓名。根据这些数据,计算出需要将每个作家分别推荐给哪些读者,输出这些读者的姓名。
一枚大果壳
2024/04/19
1780
C++信奥教学PPT:第二讲:CSP_S_数据结构之倍增(ST)表
C++ 信息奥赛CSP_J试题集之2019年初赛题
A、. cn B、 ,ch C、 .chn D、 . china
一枚大果壳
2023/08/18
4830
C++ 信息奥赛CSP_J试题集之2019年初赛题
百度 阿里 华为 腾讯 谷歌面试笔试题及解析
点评:其余题目请参见:http://blog.csdn.net/doc_sgl/article/details/11695671。 2、一个有10亿条记录的文本文件,已按照关键字排好序存储。请设计算法,可以快速的从文件中查找指字关键字的记录。
bear_fish
2018/09/14
3.5K0
百度 阿里 华为 腾讯 谷歌面试笔试题及解析
流畅的 Python 第二版(GPT 重译)(一)
"Python 是一种易于学习、功能强大的编程语言。"这是官方 Python 3.10 教程的开篇词。这是真的,但有一个问题:因为这门语言易学易用,许多实践中的 Python 程序员只利用了它强大特性的一小部分。
ApacheCN_飞龙
2024/05/24
3790
流畅的 Python 第二版(GPT 重译)(一)
LeetCode 数据库专题
写一段SQL查询来展示每位用户的 唯一标识码(unique ID );如果某位员工没有唯一标识码,使用 null 填充即可。你可以以 任意 顺序返回结果表。查询结果的格式如下例所示:
wywwzjj
2023/05/09
1.5K0
LeetCode 数据库专题
R语言学习笔记
请注意,本文编写于 398 天前,最后修改于 378 天前,其中某些信息可能已经过时。
曼亚灿
2023/05/17
2.5K0
R语言学习笔记
面向 C++ 的现代 CMake 教程(一)
打造顶级软件并非易事。开发者在网上研究这一主题时,常常遇到的问题是如何判断哪些建议是更新的,哪些方法已经被更 fresh、更好的实践所超越。与此同时,大多数资源对这个过程的解释是混乱的,没有适当的背景、上下文和结构。
ApacheCN_飞龙
2024/05/26
1.5K0
计算机专用英语词汇1695个词汇表
特别感谢: 不愿意透露姓名的小虾同学提供的音标部分 1.单词说明:   command n. 命令,指令 [kə'mɑ:nd]   单词拼写 名词 单词含义 音标(发音)   提示:着重记忆
惨绿少年
2017/12/27
4.5K0
LeetCode数据库题目集合
编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:
MiChong
2021/02/24
9530
LeetCode数据库题目集合
利用Python进行数据分析笔记
本书讲的是利用Python进行数据控制、处理、整理、分析等方面的具体细节和基本要点。我的目标是介绍Python编程和用于数据处理的库和工具环境,掌握这些,可以让你成为一个数据分析专家。虽然本书的标题是“数据分析”,重点却是Python编程、库,以及用于数据分析的工具。这就是数据分析要用到的Python编程。
CtrlX
2023/03/21
5.3K0
利用Python进行数据分析笔记
经典 40 篇完整版
Hiding behind the loose dusty curtain, a teenager packed up his overcoat into the suitcase. He planned to leave home at dusk though there was thunder and lightning outdoors. He had got to do this because he was tired of his parents’ nagging (唠叨的) about his English study and did not want to go through it any longer. He couldn’t get along well with English and disliked joining in English classes because he thought his teacher ignored him on purpose. As a result, his score in each exam never added up to over 60.
独元殇
2023/03/14
1.7K0
[PHP] 2018年终总结
========================================================================== 2018年12月29日 记录:
唯一Chat
2019/09/10
2.7K0
重构区块链
撰写这篇手册,并不简单的因为区块链是一个热门话题,更因为随着研究的深入,你会发现这是一个相当复杂的领域。关于这一话题的信息来源无外乎三个方面:技术文档和代码,商业机构的宣传,研究机构或个人的整理。但是每一种媒体都因其形式、渠道或作者而带有某种偏见。技术文档固然详细精确,但是不够通俗,视野也不够广阔;商业宣传必定带有一定的偏向性;而看似中立的研究机构和媒体也因其背后资助方或者受众市场的差异而显现出意识形态的不同。区块链领域的技术人员喜欢强调其技术领先性,但偏偏这一领域在学术界还没有一致的评判标准。区块链商业机构流行的白皮书,只有极少数既保留了技术细节,又蕴含对整个体系的理解。媒体和研究机构里则存在一种悖论,那些对区块链理解不够深,但是想象力丰富的人,率先推出了所谓的畅销书,只能让普通人初步理解一些浅层的知识,无法用来灵活运用和价值创造。只有那些深入区块链一线的研究员才会意识到,这个领域还处在高速变化期,很多东西都没有定性,出书立著为时尚早。
全栈程序员站长
2022/07/23
9.8K0
重构区块链
《增长黑客》节选与笔记[通俗易懂]
这本书涉及了很多具体又贴合现实的互联网产品问题,即使你是非专业人士,也应该读一读,了解开发者是如何把你当猫耍的,以便你更好地认识一些套路,解锁,为选择手机软件或者云端应用擦亮眼睛!
全栈程序员站长
2022/08/27
7.8K0
机器学习学术速递[7.13]
【1】 Towards Better Laplacian Representation in Reinforcement Learning with Generalized Graph Drawing 标题:广义图画强化学习中更好的拉普拉斯表示
公众号-arXiv每日学术速递
2021/07/27
1.9K0
机器学习学术速递[8.17]
【1】 Multistream Graph Attention Networks for Wind Speed Forecasting 标题:用于风速预报的多流图注意网络 链接:https://arxiv.org/abs/2108.07063
公众号-arXiv每日学术速递
2021/08/24
1.6K0
计算机视觉与模式识别学术速递[12.7]
【1】 DoodleFormer: Creative Sketch Drawing with Transformers 标题:DoodleFormer:用Transformer创作素描 链接:https://arxiv.org/abs/2112.03258
公众号-arXiv每日学术速递
2021/12/09
1.2K0
相关推荐
C++信奥教学PPT:CSP_J_算法之回溯算法
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档