kkio。|

_kkio

园龄:1年7个月粉丝:6关注:1

IOI 热病

好。

最关键的观察:第一个人确定走的方向后,所有人走的方向都只有一种可能使他感染。

那现在就有一个显然的做法:枚举第一个人走的方向,所有人之间如果能相遇,就连边,用类似最短路的方法来求。

现在边数是 n2 的,但是这种东西有个套路,就是对于任意一点,一个方向上的边只建一条最近的边。

边的种类有两种,加上方向不同,每种方向的人有三种不同的边。开四个 dis 数组表示三种边走来的距离和感染他的最小时间,跑最短路就可以了。

代码难度较大,几个技巧是提前离散化出每个直线上的点,还有给每种边编号一类的。谨慎实现。

本文作者:_kkio

本文链接:https://www.cnblogs.com/hikkio/p/17608651.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   _kkio  阅读(24)  评论(2编辑  收藏  举报
相关博文:
阅读排行:
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起