USACO: Street Race

P2752 [USACO4.3]街道赛跑Street Race 这题也A了好久啊……(可能是我太菜了 看到这道题第一眼是懵的,但发现数据范围很小,稍微放轻松一些 第一题比较好解 首先我萌可以将必经之路这样理解:如果从起点到达终点必须经过它,辣么如果删掉这个点,这个图就不连通了! 因此我萌枚举每个点 进行bfs(对于点的删除处理方法很多,这里窝的方法是在bfs前就把该点的vis设为true,酱紫似乎很好写呢,也不会浪费时间复杂度) ----------... 阅读详情
Street Race
IOI'95

Figure 1 gives an example of a course for a street race. You see some points, labeled from 0 to N (here, N=9), and some arrows connecting them. Point 0 is the start of the race; point N is the finish. The arrows represent one-way streets. The participants of the race move from point to point via the streets, in the direction of the arrows only. At each point, a participant may choose any outgoing arrow.

 
Figure 1: A street course with 10 points

A well-formed course has the following properties:

  • Every point in the course can be reached from the start.
  • The finish can be reached from each point in the course.
  • The finish has no outgoing arrows.

A participant does not have to visit every point of the course to reach the finish. Some points, however, are unavoidable. In the example, these are points 0, 3, 6, and 9. Given a well-formed course, your program must determine the set of unavoidable points that all participants have to visit, excluding start and finish.

Suppose the race has to be held on two consecutive days. For that purpose the course has to be split into two courses, one for each day. On the first day, the start is at point 0 and the finish at some `splitting point'. On the second day, the start is at this splitting point and the finish is at point N. Given a well-formed course, your program must also determine the set of splitting points. A point S is a splitting point for the well-formed course C if S differs from the star t and the finish of C, and the course can be split into two well-formed courses that (1) have no common arrows and (2) have S as their only common point, with S appearing as the finish of one and the start of the other. In the example, only point 3 is a splitting point.

PROGRAM NAME: race3

INPUT FORMAT

The input file contains a well-formed course with at most 50 points and at most 100 arrows. There are N+2 lines in the file. The first N+1 lines contain the endpoints of the arrows that leave from the points 0 through N respectively. Each of these lines ends with the number -2. The last line contains only the number -1.

SAMPLE INPUT (file race3.in)

1 2 -2
3 -2
3 -2
5 4 -2
6 4 -2
6 -2
7 8 -2
9 -2
5 9 -2
-2
-1

OUTPUT FORMAT

Your program should write two lines. The first line should contain the number of unavoidable points in the input course, followed by the labels of these points, in ascending order. The second line should contain the number of splitting points of the input course, followed by the labels of all these points, in ascending order.

SAMPLE OUTPUT (file race3.out)

2 3 6
1 3


解体思路:

做到这里,这样的题目就算作是比较水的啦。

对于地图的合法性,可以使用DFS连通分量来判断。必经点可以假设路径平权,从而流入量等于起点流出量的点是必经的。

【Python爬虫】股票信息定向爬取 【Python爬虫】股票信息定向爬取:通过requests-bs4-re技术路线爬虫获取上交所和深交所所有股票的名称和交易信息 阅读详情

相关推荐

ASME B31.3-2024工艺管道标准介绍

ASME B31.3-2024《过程管道》是ASME发布的最新版工业管道标准,适用于石油、化工、制药等行业的管道系统设计、建造和维护。该版标准进行了多项重要更新,包括软管管理、应力指数调整、新增管件类型、焊接检查和泄漏测试等条款修订,并新增了书面报告要求。标准共594页,为全球过程工业提供管道安全规范,对保障管道系统完整性、可靠性具有重要意义,被多国强制采用或推荐使用。

TXNMG的博客 4697

C++——【USACO 4.3.2】——Street Race

Street Race IOI'95 Figure 1 gives an example of a course for a street race. You see some points, labeled from 0 to N (here, N=9), and some arrows connecting them. Point 0 is the start of the race;

McDonnell_Douglas的博客 674

最新Docker GPU支持全解析:为什么nvidia-smi能用但PyTorch找不到CUDA?

本文深入解析了Docker容器中nvidia-smi命令可用但PyTorch无法调用CUDA的根本原因。关键在于默认配置仅暴露了GPU的utility管理能力,而CUDA计算所需的compute能力未被激活。通过正确设置NVIDIA_DRIVER_CAPABILITIES环境变量为compute,utility,并配合--gpus参数,即可解决此问题,确保AI训练等任务顺利进行。

convnet3designer的博客 238

usaco training 4.3.3 Street Race 题解

Street Race题解 IOI'95 Figure 1 gives an example of a course for a street race. You see some points, labeled from 0 to N (here, N=9), and some arrows connecting them. Point 0 is the start of the rac

阿蒋的专栏 2027

从打印攻击到视频重放:手把手用OULU-NPU训练你的第一个活体检测模型

本文详细介绍了如何使用OULU-NPU数据集训练活体检测模型,以应对打印攻击和视频重放等安全威胁。通过PyTorch框架,从环境准备、数据加载、预处理到模型架构设计,手把手教你构建一个高效的双流网络,结合CNN和LSTM技术,提升模型在多种攻击场景下的检测准确率。

weixin_29092031的博客 384

sentaurus浪涌仿真sdevice代码解释(4)

9. `Plot(FilePrefix="Surge_n@node@" time=(Range=(0 @<0+10E-3>@) Intervals=10) NoOverWrite)`:设置了一个绘图过程,用于在瞬态分析过程中绘制结果,文件名前缀为`Surge_n@node@`,时间范围从0到`10E-3`秒,每隔10个时间点绘制一次,且不覆盖之前的结果。同样设置了最大迭代次数和线搜索阻尼系数。这个过程将模拟从`0`到`10E-3`秒内器件的行为,并且会在不同的时间点记录和绘制电流和电势的数据。

qq_52640792的博客 1658

USACO Street Race 解题报告

这道题要求找出所有的unavoidable points和splitting points. 定义sui'r

thestoryofsnow的专栏 736

RAG-Anything 实战:构建企业级多模态知识图谱问答系统

本文详细介绍了如何利用RAG-Anything构建企业级多模态知识图谱问答系统,解决跨模态文档处理的痛点。通过架构设计解析、部署实战指南和典型业务场景解决方案,帮助企业实现高效的知识管理和智能检索,提升决策效率。

weixin_29089057的博客 385

usaco street race(dfs)

一开始我觉得很麻烦但第一题好做由于数据较小直接每个点删后dfs就可以了,第二问我不知道如何判断有没有公共的道路,最后看别人的也挺简单的就是看分别从两条公路的起点开始dfs如果他们能到达同一点就代表有公共道路。那就好做了。 /* ID: jinbo wu TASK: race3 LANG: C++ */ #include using namespace std; int g[55][55]; bo

silence401的博客 365

高质量文献综述原来这么写!借助Gemini 3 Pro+四步法,手把手教你写出有逻辑深度的综述

总结与展望先总结现状,说明前人已经做到什么地步了,再指出缺口,前人没解决什么问题、方法有什么局限等等,最后再在这个缺口的基础上,提出你的未来研究方向。当你有个复杂的研究题目,但没办法拆解出关键词,就可以让Gemini 3 Pro来辅助帮你拆解,并帮你写专业的检索式,若是找英文文献,还能帮你将中文关键词翻译成地道的专业术语。做文献笔记,可以建立文献笔记矩阵,可以用Excel建个表格,横向是文献,纵向是关键要素,包括作者/年份、研究问题/假设、理论框架/模型、研究方法/数据来源、核心结论、局限性/Gap。

智能AI让学术科研更容易 991

手把手教你学基带SOC芯片(4.4.9)--基带芯片的电源管理实例:高通 Snapdragon 系列实例(十)

Snapdragon 888 通过支持多种深度睡眠模式,如 AOAC 模式、低功耗模式和深度睡眠模式,以及智能电源管理技术,实现了对功耗的精细管理。这些模式不仅延长了设备的电池寿命,还确保了用户在各种使用场景下的良好体验。无论是保持网络连接、限制后台活动,还是完全关闭不必要的功能,Snapdragon 888 都能够灵活应对,提供高效的功耗管理方案。

MHD0815的博客 740

[USACO4.3.2]Street Race

  Street Race   IOI'95 Figure 1 gives an example of a course for a street race. You see some points, labeled from 0 to N (here, N=9), and some arrows connecting them. Point 0 is the start of the r...

qq_37665716的博客 281

软件产品国际化:前后端及App多语言版本解决方案(超详细实现过程)

多语言版本解决方案是应对全球化趋势的关键策略,它通过构建灵活且可扩展的架构,支持软件产品在不同语言和文化环境下的顺畅运行与展示。此方案涵盖了前端多语言界面实现、后端多语言数据处理及大数据环境下的多语言支持等多个层面,确保公司能够高效地推出适应全球用户多样化需求的软件产品。在前端多语言界面实现方面,解决方案采用了国际化与本地化的结合方法。国际化过程确保软件的功能和代码设计能够处理多种语言和文化习惯,而本地化则针对特定地区进行界面和内容的调整。

大模型大数据攻城狮的专栏 2752

Street Race[USACO]

第一问,判断各节点被删除之后,是否可以从起点到终点,如不可以,则满足要求。 第二问在第一问基础上,我用的bfs,判断是否成功:将图从当前节点分割成两部分(如果只分成了一部分,则为失败),是否所有边都为内部边,若是则当前节点满足。 /* ID: zhangyc1 LANG: C++ TASK: race3 */ #include <fstream> ...

weixin_30521649的博客 164

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

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

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

P2752 [USACO4.3] 街道赛跑Street Race 题解

该题目要求分析一个街道跑道图,找出两类关键路口: 不可避免的路口:删去后无法从起点到达终点 中间路口:能将跑道分成两个良好部分的路口 解题思路: 使用BFS遍历图,检查每个点是否为必经点(删除后起点无法到达终点) 对必经点进一步验证是否为中间路口,确保分割后两部分无共同边 输出结果按升序排列 代码实现通过两次BFS分别判断必经点和中间路口,时间复杂度与图规模相关。

bz_2023f33的博客 807

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

usaco4.3.2 Street Race

一 原题 Street Race IOI'95 Figure 1 gives an example of a course for a street race. You see some points, labeled from 0 to N (here, N=9), and some arrows connecting them. Point 0 is the start of the

max_kibble的博客 406

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

usaco 4.3 Street Race(搜索)

Street Race IOI'95 Figure 1 gives an example of a course for a street race. You see some points, labeled from 0 to N (here, N=9), and some arrows connecting them. Point 0 is the start of the race; p

志当存高远 757

usaco Street Race

图一表示一次街道赛跑的跑道。可以看出有一些路口(用 0 到 N 的整数标号),和连接这些路口的箭头。路口 0 是跑道的起点,路口 N 是跑道的终点。箭头表示单行道。运动员们可以顺着街道从一个路口移动到另一个路口(只能按照箭头所指的方向)。当运动员处于路口位置时,他可以选择任意一条由这个路口引出的街道。 图一:有 10 个路口的街道 一个良好的跑道具有如下几个特点: 每一个路口都可以由...

weixin_30654419的博客 151

usaco 4.3 Street Race 2010.8.7

Street Race IOI'95 Figure 1 gives an example of acourse for a street race. You see some points, labeled from 0 to N (here, N=9),and some arrows connecting them. Point 0 is the start of the race; poin

Batman_的博客 377

【USACO4-3-2】街道赛跑Street Race bfs

//居然连最bfs都不会,果然我实在是太菜了啊qwq对于第一问我们遍历每个点,每次将这个点去掉进行bfs,如果最后到不了终点说明这个点就是不可避免的点。如果这个点是不可避免的点,我们的bfs实际上已经构建好了第一部分,接下来只要判断在第二部分中是否存在连到第一部分的边即可。如果没有的话就是中间路口,如果有的话说明在第二天存在一条从第一部分经过的路径,不满足题目条件。...

Mininda 472

Street Race

题意:不想写,摘抄NOCOW翻译(http://www.nocow.cn/index.php/Translate:USACO/race3) 描述 图一表示一次街道赛跑的跑道。可以看出有一些路口(用 0 到 N 的整数标号),和连接这些路口的箭头。路口 0 是跑道的起点,路口 N 是跑道的终点。箭头表示单行道。运动员们可以顺着街道从一个路口移动到另一个路口(只能按照箭头所指的方向

原味 769

USACO 4.3 Street Race

Street RaceIOI'95 Figure 1 gives an example of a course for a street race. You see some points, labeled from 0 to N (here, N=9), and some arrows connecting them. Point 0 is the start of the race...

weixin_30483495的博客 144

USACO 4.3 Street Race (搜索)

2015-03-2620:55:52 思路:题目大意是给出一个有向图,给出起点和终点,让你求出两种点:   (1)任何从起点->终点的路径都必须经过的点。(2)该点将图分为两部分,(起点->该点)和(该点->终点)两个部分,且两个部分没有边相连。   考虑:显然(2)点必然是(1)点,所以我们先求(1)点,方法很简单,枚举删除每个点,如果删除后从起点出发走不到终...

dingdi3021的博客 129

USACO-Section 4.3 Street Race (枚举&&BFS)

第一问很好求,直接枚举然后判断是否能到达终点 第二问刚开始没理解题意,以为是当前点不在环上,最终明白应该是其作为起点时,不能到以其为终点的那一部分 又看了下题解,终于AC了。。。

idealism_xxm的专栏 478

usaco 4.3 Street Race

 求有向图割点和分裂点,由于数据很小,直接枚举,去掉某点,然后判断即可,需要注意的地方是分裂点一定是割点 #include  #include  #include  #include  using namespace std;/*PROG: race3LANG: C++ID: heben991*/const int N = 110;i

Ben的专栏 745

Usaco Training Section 4.3 Street Race

题意真的挺绕的…… 第一问求从起点到终点所有路径上哪些点肯定出现,其实也就是把这些点连的边删掉,起点就到不了终点,枚举一下,大概是O(nm)的。 第二问求有哪些个点能把图分成两块,两块之间没有共同的边,只有那个分割点是公共的。我们可以发现,第二问答案的集合属于第一问的集合,因为如果第一问的条件不满足,第二问的条件也不会满足。于是我们把第一问的答案每个作为分割点,每次跑两个dfs,第一个从起点出...

Monster的博客 214
上一篇: USACO: The Primes
下一篇: Windows系列的系统引导
Geterns
博客等级 码龄17年 16粉丝 77原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值