2022csp-S2提高组复赛真题

这篇具有很好参考价值的文章主要介绍了2022csp-S2提高组复赛真题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

csp提高组真题,算法,数据结构,c++

封面

T1:假期计划

题目描述

小熊的地图上有 n 个点,其中编号为 1 的是它的家、编号为2,3,…,n 的都是景点。部分点对之间有双向直达的公交线路。如果点 x 与 z1、z1 与 z2、……、z(k−1) 与 z(k)、z(k) 与 y 之间均有直达的线路,那么我们称 x 与 y 之间的行程可转车 k 次通达;特别地,如果点 x 与 y 之间有直达的线路,则称可转车 0 次通达。

很快就要放假了,小熊计划从家出发去 4 个不同的景点游玩,完成 5 段行程后回家:家→ 景点 A→ 景点 B → 景点 C → 景点 D → 家,且每段行程最多转车 k 次。转车时经过的点没有任何限制,既可以是家、也可以是景点,还可以重复经过相同的点。例如,在景点 A → 景点 B 的这段行程中,转车时经过的点可以是家、也可以是景点 C,还可以是 景点 D→ 家 这段行程转车时经过的点。

假设每个景点都有一个分数,请帮小熊规划一个行程,使得小熊访问的四个不同景点的分数之和最大。

需要注意的是:这四个景点并不是给定的,而是自己选取的。

输入格式

第一行包含三个正整数 n, m, k分别表示地图上点的个数、双向直达的点对数量、每段行程最多的转车次数。

第二行包含n−1 个正整数,分别表示编号为2,3,…,n 的景点的分数。

接下来 m 行,每行包含两个正整数 x,y表示点 x 和 y 之间有道路直接相连,保证 1≤x,y≤n,且没有重边,自环。

输出格式

输出一个正整数,表示小熊经过的 4 个不同景点的分数之和的最大值。

输入输出样例

输入样例#1

8 8 1 

9 7 1 8 2 3 6

1 2 

2 3 

3 4

4 5

5 6

6 7

7 8

8 1

输出样例 #1

27

输入样例#2

7 9 0 

1 1 1 2 3 4

1 2

2 3

3 4

1 5

1 6 

1 7 

5 4 

6 4 

7 4

输出样例#2

7

说明/提示

【样例解释 #1】

当计划的行程为 1→2→3→5→7→1 时,4 个景点的分数之和为 9 + 7 + 8 + 3 = 27,可以证明其为最大值。

附:行程 1→3→5→7→8→1 的景点分数之和为 24、行程 1→3→2→8→7→1 的景点分数之和为 25。它们都符合要求,但分数之和不是最大的。

行程1→2→3→5→8→1 的景点分数之和为 30,但其中5→8 至少需要转车 2 次,因此不符合最多转车 k=1 次的要求。

行程1→2→3→2→3→1 的景点分数之和为 32,但游玩的并非 4 个不同的景点,因此也不符合要求。

【样例 #3】

见附件中的 holiday/holiday3.in 与 holiday/holiday3.ans

【数据范围】

对于所有数据,保证5≤n≤2500,1≤m≤10000,0≤k≤100,所有景点的分数1≤si≤100000000。保证至少存在一组符合要求的行程

csp提高组真题,算法,数据结构,c++

测试点编号

T2:策略游戏

题目描述

小 L 和小 Q 在玩一个策略游戏。

有一个长度为 n 的数组 A 和一个长度为 m 的数组 B,在此基础上定义一个大小为n×m 的矩阵 C,满足Cij=Ai×Bj。所有下标均从 1 开始。

游戏一共会进行 q 轮,在每一轮游戏中,会事先给出 4 个参数 l1,r1,l2,r2,满足1≤l1≤r1≤n、1≤l2≤r2≤m。

游戏中,小 L 先选择一个 l1∼r1 之间的下标 x,然后小 Q 选择一个l2∼r2 之间的下标 y。定义这一轮游戏中二人的得分是Cxy。

小 L 的目标是使得这个得分尽可能大,小 Q 的目标是使得这个得分尽可能小。同时两人都是足够聪明的玩家,每次都会采用最优的策略。

请问:按照二人的最优策略,每轮游戏的得分分别是多少?

输入格式

第一行输入三个正整数n,m,q,分别表示数组A,数组B的长度和游戏轮数。

第二行:n 个整数,表示Ai,分别表示数组 A 的元素。

第三行:m 个整数,表示Bi,分别表示数组 B 的元素。

接下来 q 行,每行四个正整数,表示这一次游戏的l1,r1,l2,r2。

输出格式

输出共 q 行,每行一个整数,分别表示每一轮游戏中,小 L 和小 Q 在最优策略下的得分。

输入输出样例

输入样例#1

3 2 2

0 1 -2 

-3 4 

1 3 1 2 

2 3 2 2

输出样例#1

0

4

输入样例 #2

6 4 5 

3 -1 -2 1 2 0

1 2 -1 -3

1 6 1 4

1 5 1 4

1 4 1 2

2 6 3 4 

2 5 2 3

输出样例#2

-2 

3

2

-1

说明/提示

【样例解释 #1】

这组数据中,矩阵 C 如下:

csp提高组真题,算法,数据结构,c++

在第一轮游戏中,无论小 L 选取的是 x=2 还是 x=3,小 Q 都有办法选择某个 y 使得最终的得分为负数。因此小 L 选择 x=1 是最优的,因为这样得分一定为 0。

而在第二轮游戏中,由于小 L 可以选x=2,小 Q 只能选y=2,如此得分为 4。

【样例 #3】

见附件中的 game/game3.in 与 game/game3.ans

【样例 #4】

见附件中的 game/game4.in 与 game/game4.ans

【数据范围】

对于所有数据,1≤n,m,q≤100000,−1000000000≤Ai,Bi≤1000000000。对于每轮游戏而言,1≤l1≤r1≤n,1≤l2≤r2≤m。

csp提高组真题,算法,数据结构,c++

其中,特殊性质 1 为:保证Ai,Bi>0。
特殊性质 2 为:保证对于每轮游戏而言,要么l1=r1,要么l2=r2。

T3:星战

题目描述

在这一轮的星际战争中,我方在宇宙中建立了 n 个据点,以 m 个单向虫洞连接。我们把终点为据点 u 的所有虫洞归为据点 u 的虫洞。

战火纷飞之中这些虫洞很难长久存在,敌人的打击随时可能到来。这些打击中的有效打击可以分为两类:

  1. 敌人会摧毁某个虫洞,这会使它连接的两个据点无法再通过这个虫洞直接到达,但这样的打击无法摧毁它连接的两个据点。

  2. 敌人会摧毁某个据点,由于虫洞的主要技术集中在出口处,这会导致该据点的所有还未被摧毁的虫洞被一同摧毁。而从这个据点出发的虫洞则不会摧毁。

注意:摧毁只会导致虫洞不可用,而不会消除它的存在。

为了抗击敌人并维护各部队和各据点之间的联系,我方发展出了两种特种部队负责修复虫洞:

  • A 型特种部队则可以将某个特定的虫洞修复。

  • B 型特种部队可以将某据点的所有损坏的虫洞修复。

考虑到敌人打击的特点,我方并未在据点上储备过多的战略物资。因此只要这个据点的某一条虫洞被修复,处于可用状态,那么这个据点也是可用的。

我方掌握了一种苛刻的空间特性,利用这一特性我方战舰可以沿着虫洞瞬移到敌方阵营,实现精确打击。

为了把握发动反攻的最佳时机,指挥部必须关注战场上的所有变化,为了寻找一个能够进行反攻的时刻。总指挥认为:

  • 如果从我方的任何据点出发,在选择了合适的路线的前提下,可以进行无限次的虫洞穿梭(可以多次经过同一据点或同一虫洞),那么这个据点就可以实现反击。

  • 为了使虫洞穿梭的过程连续,尽量减少战舰在据点切换虫洞时的质能损耗,当且仅当只有一个从该据点出发的虫洞可用时,这个据点可以实现连续穿梭。

  • 如果我方所有据点都可以实现反击,也都可以实现连续穿梭,那么这个时刻就是一个绝佳的反攻时刻。

总司令为你下达命令,要求你根据战场上实时反馈的信息,迅速告诉他当前的时刻是否能够进行一次反攻。

输入格式

输入的第一行包含两个正整数n,m。

接下来 m 行每行两个数 u,v,表示一个从据点 u 出发到据点 v 的虫洞。保证 u != v (即u不等于v),保证不会有两条相同的虫洞。初始时所有的虫洞和据点都是完好的。

接下来一行一个正整数 q 表示询问个数。

接下来 q 行每行表示一次询问或操作。首先读入一个正整数 t 表示指令类型:

  • 若 t=1,接下来两个整数 u,v 表示敌人摧毁了从据点 u 出发到据点 v 的虫洞。保证该虫洞存在且未被摧毁。

  • 若 t=2,接下来一个整数 u 表示敌人摧毁了据点 u。如果该据点的虫洞已全部被摧毁,那么这次袭击不会有任何效果。

  • 若 t = 3,接下来两个整数 u,v 表示我方修复了从据点 u 出发到据点 v 的虫洞。保证该虫洞存在且被摧毁。

  • 若 t = 4,接下来一个整数 u 表示我方修复了据点 u。如果该据点没有被摧毁的虫洞,那么这次修复不会有任何效果。

每次指令执行之后,你需要判断能否进行一次反攻。如果能则输出 YES ,否则输出 NO

输出格式

输出一共 q 行。对于每个指令,输出这个指令执行后能否进行反攻。

输入输出样例

输入样例 #1

3 6

2 3

2 1 

1 2

1 3

3 1

3 2

11

1 3 2 

1 2 3 

1 1 3 

1 1 2 

3 1 3 

3 3 2 

2 3

1 3 1

3 1 3 

4 2 

1 3 2

输出样例 #1

NO

NO

YES 

NO

YES

NO 

NO 

NO 

YES

NO 

NO

说明/提示

【样例解释 #1】

虫洞状态可以参考下面的图片, 图中的边表示存在且未被摧毁的虫洞:

csp提高组真题,算法,数据结构,c++

【样例 #2】

见附件中的 galaxy/galaxy2.in 与 galaxy/galaxy2.ans

【样例 #3】

见附件中的 galaxy/galaxy3.in 与 galaxy/galaxy3.ans

【样例 #4】

见附件中的 galaxy/galaxy4.in 与 galaxy/galaxy4.ans

【数据范围】

对于所有数据保证:1≤n≤500000,1≤m≤500000,1≤q≤500000。

csp提高组真题,算法,数据结构,c++

T4:数据传输

题目描述

小 C 正在设计计算机网络中的路由系统。

测试用的网络总共有 n 台主机,依次编号为1∼n。这 n台主机之间由 n−1 根网线连接,第 i 条网线连接个主机 ai 和 bi。保证任意两台主机可以通过有限根网线直接或者间接地相连。受制于信息发送的功率,主机 a 能够直接将信息传输给主机 b 当且仅当两个主机在可以通过不超过 k 根网线直接或者间接的相连。

在计算机网络中,数据的传输往往需要通过若干次转发。假定小 C 需要将数据从主机 a 传输到主机 b(a != b),则其会选择出若干台用于传输的主机c1=a,c2,…,c(m−1),c(m)=b,并按照如下规则转发:对于所有的 1≤i<m,主机 ci 将信息直接发送给 ci+1。

每台主机处理信息都需要一定的时间,第 i 台主机处理信息需要 vi 单位的时间。数据在网络中的传输非常迅速,因此传输的时间可以忽略不计。据此,上述传输过程花费的时间为: 

csp提高组真题,算法,数据结构,c++

现在总共有 q 次数据发送请求,第 i 次请求会从主机 si 发送数据到主机 ti。小 C 想要知道,对于每一次请求至少需要花费多少单位时间才能完成传输。

输入格式

输入的第一行包含三个正整数 n,Q,k,分别表示网络主机个数,请求个数,传输参数。数据保证 1≤n≤200000,1≤Q≤200000,1≤k≤3。

输入的第二行包含 n 个正整数,第 i 个正整数表示 vi,保证 1≤vi≤1000000000。

接下来 n−1 行,第 i 行包含两个正整数 ai,bi,表示一条连接主机 ai,bi 的网线。保证 1≤ai,bi≤n。

接下来 Q 行,第 i 行包含两个正整数 si,ti,表示一次从主机 si 发送数据到主机 ti 的请求。保证1 ≤ si,ti ≤ n (si != ti)。

输出格式

Q 行,每行一个正整数,表示第 i 次请求在传输的时候至少需要花费多少单位的时间。

输入输出样例

输入 #1

7 3 3

1 2 3 4 5 6 7

1 2

1 3

2 4 

2 5 

3 6 

3 7 

4 7 

5 6 

1 2

输出 #1

12 

12 

3

说明/提示

【样例解释 #1】

对于第一组请求,由于主机 4,7 之间需要至少 4 根网线才能连接,因此数据无法在两台主机之间直接传输,其至少需要一次转发;我们让其在主机 1 进行一次转发,不难发现主机 1 和主机 4,7 之间都只需要两根网线即可连接,且主机 1 的数据处理时间仅为 1,为所有主机中最小,因此最少传输的时间为 4 + 1 + 7 = 12。

对于第三组请求,由于主机 1,2 之间只需要 1 根网线就能连接,因此数据直接传输就是最优解,最少传输的时间为1+2=3。

【样例 #2】

见附件中的 transmit/transmit2.in 与 transmit/transmit2.ans

该样例满足测试点 2 的限制。

【样例 #3】

见附件中的 transmit/transmit3.in 与 transmit/transmit3.ans

该样例满足测试点 3 的限制。

【样例 #4】

见附件中的 transmit/transmit4.in 与 transmit/transmit4.ans

该样例满足测试点 20 的限制。

【数据范围】

对于所有的测试数据,满足 1≤n≤200000,1≤Q≤200000,1≤k≤3,1≤ai,bi≤n,1≤si,ti≤n,si != ti。

csp提高组真题,算法,数据结构,c++

特殊性质:保证 ai=i+1,而 bi 则从 1,2,…,i 中等概率选取。

写在最后:

应该下周题解能写好,如果大家有想法欢迎留言哦!

这回题出的几乎全是树和图,T1也不想往年一样搞一道签到题,估计平均分也高不了太多吧。

打字不易,莫忘三连!~~~文章来源地址https://www.toymoban.com/news/detail-678025.html

到了这里,关于2022csp-S2提高组复赛真题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • CSP-S 2023 第二轮游记

    初赛 77 分过了,不多说,居然能排到前 10% 也是没想到的。去年参加过,但是因为某些原因复赛停办了。第一次正式参赛,比较紧张,也没啥经验。 主要说复赛。28分匆匆忙忙进了考场,然后看到极域“保持安静”经典界面,直接梦回小学三年级。因为模拟赛的时候也知道

    2024年02月08日
    浏览(26)
  • CSP-S初赛基础知识整理

    持续更新中 关于部分 l a t e x latex l a t e x 在 csdn 不能很好的显示,更好的阅读体验。 计算机系统的组成 硬件系统和软件系统。 计算机硬件的五大组成 控制器、运算器、存储器、输入设备和输出设备。 [1-2]二进制 [1]基本定义及应用 逢二进一。后缀为 B texttt{B} B 。 是计算机

    2024年02月09日
    浏览(34)
  • NOI Linux 2.0 CSP奥赛复赛环境安装使用指南

    以下是可能导致你在老版 NOI Linux 系统下形成的习惯在新版下翻车的改动。 移除了 GUIDE 从 32bit 变为了 64bit 系统,需要注意指针现在占 8 字节而不是 4 字节 更新了编译器版本 默认情况下右键没了【新建文件】的选项 桌面目录改为中文,可能会导致一些程序无法运行 系统基于

    2024年02月07日
    浏览(26)
  • 软考A计划-真题-分类精讲汇总-第九章(数据结构与算法基础)

    点击跳转专栏=Unity3D特效百例 点击跳转专栏=案例项目实战源码 点击跳转专栏=游戏脚本-辅助自动化 点击跳转专栏=Android控件全解手册 点击跳转专栏=Scratch编程案例 专注于 Android/Unity 和各种游戏开发技巧,以及 各种资源分享 (网站、工具、素材、源码、游戏等) 有什么需要

    2024年02月05日
    浏览(52)
  • NOIP2014普及组复赛 珠心算测验 螺旋矩阵 真题答案

    珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练, 既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。 某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法。他随机生成一个正整数集合,集合中的

    2024年02月12日
    浏览(28)
  • 第9届Python编程挑战赛北京赛区复赛真题剖析-2023年全国青少年信息素养大赛

     [导读]:超平老师计划推出《全国青少年信息素养大赛Python编程真题解析》 50讲 ,这是超平老师解读Python编程挑战赛系列的第 16 讲。 全国青少年信息素养大赛(原全国青少年电子信息智能创新大赛)是“世界机器人大会青少年机器人设计与信息素养大赛”赛事之一,由中国

    2024年02月13日
    浏览(55)
  • 2022 数据库复习真题【太原理工大学】

    咳咳,嗨伙计? 下面是我整理出来的一些数据库历年选择真题,好了废话不多说,仅供参考! 1. 数据库( DB )、数据库系统( DBS )和数据库管理系统( DBMS)之间的关系是( A ) A. DBS 包括 DB 和 DBMS B. DBMS 包括 DB 和 DBS C. DB 包括 DBS 和 DBMS D. DBS 就是 DB ,也就是 DBMS 2. 概念模

    2024年02月03日
    浏览(43)
  • 2019 CSP-J 真题 题目、答案以及解析

    最近快要CSP了,为了帮助大家[zì jǐ]更好的复习历年真题特地作此题解一篇。 我写完之后看了一遍,感觉有点啰嗦,大家看不看随意。 还有,有没有大佬讲讲阅读程序最后一题的倒数第二问? 蒟蒻我看不懂😭😭😭😭😭😭😭😭😭😭 洛谷版 CCF版 建议使用CCF版。因为洛谷

    2024年02月11日
    浏览(29)
  • [CSP-J 2022] 解密

    大家好,今天我来解题[CSP-J 2022] 解密 题目来源链接 题目描述 给定一个正整数 k k k ,有 k k k 次询问,每次给定三个正整数 n i , e i , d i n_i, e_i, d_i n i ​ , e i ​ , d i ​ ,求两个正整数 p i , q i p_i, q_i p i ​ , q i ​ ,使 n i = p i × q i n_i = p_i times q_i n i ​ = p i ​ × q i ​ 、 e

    2024年02月08日
    浏览(36)
  • 2022CSP-J2题解

    今天(2022,10,29), C S P − J S CSP-JS C S P − J S 第二轮成功举办, 虽然大部分省市疫情取消 本蒟蒻今天有幸参加CSP,特发入门组题解 小文同学刚刚接触了信息学竞赛,有一天她遇到了这样一个题:给定正整数 a a a 和 b b b ,求 a b a^b a b 的值是多少。 a b a^b a b 即 b b b 个 a a a 相乘

    2023年04月08日
    浏览(69)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包