https://codeforces.com/gym/102361

E:

https://codeforces.com/gym/102361/problem/E

题意:
给出一个个机器人都从入口出发,一开始方向默认为下,你可以选在在一些格子上面放置一个转向器,转向器有四种:

  • 向下走变为向右走;
  • 向下走变为向左走;
  • 向上走变为向右走;
  • 向上走变为向左走。

每个格子最多放一个转向器。
问最后是否存在一种方案,使得每个机器人都能到达从其中一个出口。

 

网络流题。

有很多类似模型的网格网络流问题。

一种如:弯弯国,无限之环等,要确定每个格子的状态

还有就是这种:网格上路径连通问题

一定要先观察出性质:

所有的机器人的路线不会有重合线段(可以交于某点)

进一步:

每个点从横着的方向和竖着的方向分别最多经过一次

考虑把每个格点拆成横着的点和竖着的点,横竖的点各自再拆成入点和出点

横点之间出点与入点流量1相连,竖点之间同理

每个横点竖点分别使自身入点连接出点,流量1

这样保证了横着竖着最多经过一次。

转向?

等价于,横竖同时经过一次!

令每个格点的横点出点连接该格点竖点的入点,竖点出点也连接横点入点即可。

 

注意到,虽然可能会出现“折返”的流,但是一定不优,不影响判断。

 

G:

https://codeforces.com/gym/102361/problem/G

轮廓线DP即可。

卡常。先排除不可能是轮廓线的二进制数。

大概能省去8倍的时间。

998ms通过?

 

 

K:

https://codeforces.com/gym/102361/problem/K

相关文章:

  • 2022-12-23
  • 2021-09-21
  • 2021-11-16
  • 2021-08-25
  • 2021-08-15
  • 2021-10-15
  • 2021-10-09
猜你喜欢
  • 2021-06-26
  • 2021-08-05
  • 2021-07-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案