洛谷CF1360E 多边形

这是一篇关于洛谷竞赛题目CF1360E的解析博客,主要讨论了一道模拟题的解题思路和错误分析。题目要求判断子弹在正方形矩阵中是否会按规则停止,重点在于理解子弹停止的条件,即只能在边界或遇到其他子弹时停止。文章提到了一种O(n^2*t)时间复杂度的解决方案,并指出了常见错误:不应将0视为1进行判断。文章最后给出了通过代码。
摘要由CSDN通过智能技术生成

题目标签

CF1360E

标签

模拟

难度

普及/提高-

思路分析

思路一

时间复杂度 O ( n 2 t ) O(n^2t) O(n2t)

说实在,这一题其实很简单。一道纯模拟题。我们先来分析一下题目:“且遇到边界后会停止,遇到一个停止的子弹也会停止”。这个点可以说明每一个子弹的最终坐标只可能在边界上,或者右方/下方有一个子弹。如果这些条件都不满足,这种答案是错误的。因为我们来想想,炮弹往右射出去,必定要碰到边界和子弹才会停下来。可出现了还没碰到边际和子弹就停下来的情况是不可能的。所以只需判断是否存在上述情况即可。当有出现这种情况时,则停止循环,输出 N O NO NO 。否则,输出 Y E S YES YES

从代码来分析,首先要求输入一个边长为 n n n 的正方形矩阵,那每次循环只需要把这个矩阵的所有数组循环一次就好了。先来分析一下在边界的情况。如何判断是否在边界呢?其实很简单。只要把矩阵的右面一层和下面一层全部用 1 1 1 扫过一边就OK了。

	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值