news 2026/2/7 3:53:00

至【牛客tracker 每日一题】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
至【牛客tracker 每日一题】

时间限制:1秒 空间限制:1024M

网页链接

牛客tracker

牛客tracker & 每日一题,完成每日打卡,即可获得牛币。获得相应数量的牛币,能在【牛币兑换中心】,换取相应奖品!助力每日有题做,丰盈牛币日益多!

题目描述

⭐我喜欢在雨天屋檐下追溯滞后的频率

Bingbong 给定一个大小为2 × n 2×n2×n2 22n nn列)的矩阵,我们使用( i , j ) (i,j)(i,j)表示矩阵中从上往下数第i ii行和从左往右数第j jj列的位置,初始时每个位置都为空地。Bing 初始位于( x 1 , y 1 ) (x_1,y_1)(x1,y1),Bong 初始位于( x 2 , y 2 ) (x_2,y_2)(x2,y2),两个人的位置可以重复。
他们每次移动会以向上、向下或者向右移动一个单元格,直到移动到终点( 2 , n ) (2,n)(2,n),前提是不能超出边界。

一个位置若放置了障碍物,则无法进入。现在你可以在矩阵上放置任意数量的障碍物(也可以不放置障碍物),需要满足以下条件:

输入描述:

第一行输入一个整数n ( 1 ≦ n ≦ 1 0 5 ) n(1≦n≦10^5)n(1n105),表示矩阵的列长。
第二行输入两个整数x 1 , y 1 ( 1 ≦ x 1 ≦ 2 ; 1 ≦ y 1 ≦ n ) x_1,y_1(1≦x_1≦2; 1≦y_1≦n)x1,y1(1x12;1y1n),表示B i n g BingBing的起始位置。
第三行输入两个整数x 2 , y 2 ( 1 ≦ x 2 ≦ 2 ; 1 ≦ y 2 ≦ n ) x_2,y_2(1≦x_2≦2; 1≦y_2≦n)x2,y2(1x22;1y2n),表示B o n g BongBong的起始位置。

输出描述:

请判断是否存在满足条件的放置方法,若存在输出Y E S YESYES,否则输出N O NONO

示例1

输入:

6 1 1 1 1

输出:

YES

示例2

输入:

6 1 1 1 2

输出:

NO

解题思路

首先检查起始位置的列是否超过n nn,若超过则直接输出N O NONO;随后根据两人起始位置的行是否相同分类判断,若行相同,列相同则初始最短路径长度一致,输出Y E S YESYES,列不同则无法通过放置障碍物调整路径长度使其相等,输出N O NONO;若行不同,先排除某位置列为n nn且行的关系导致无法调整的边界情况,再判断列的差值是否为1 11且满足行与列的位置条件(如x 1 > x 2 x_1>x_2x1>x2y 1 ≠ n − 1 y_1≠n-1y1=n1等),满足则可通过放置障碍物调整路径长度使其相等,输出Y E S YESYES,否则输出N O NONO;该方法通过分析起始位置的行和列的数学关系,避免模拟路径和障碍物放置,时间复杂度为O ( 1 ) O(1)O(1),适配n nn1 e 5 1e51e5的规模,精准判断是否存在符合条件的放置方法。

代码内容

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;typedefpair<ll,ll>pii;constll p=1e9+7;constll N=5e2+20;intmain(){ll n;cin>>n;ll x1,x2,y1,y2;cin>>x1>>y1;cin>>x2>>y2;if(y1>n||y2>n)cout<<"NO"<<endl;elseif(x1==x2){if(y1==y2)cout<<"YES"<<endl;elsecout<<"NO"<<endl;}else{if((x1>x2&&y1==n)||(x1<x2&&y2==n))cout<<"NO"<<endl;elseif((y1-y2==1)||(y2-y1==1)&&((x1>x2&&y1!=n-1)||(x2>x1&&y2!=n-1)))cout<<"YES";elsecout<<"NO"<<endl;}return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/6 22:57:21

51、Windows 10系统问题解决工具与方法全解析

Windows 10系统问题解决工具与方法全解析 在使用Windows 10系统时,难免会遇到各种问题。不过系统提供了多种工具和功能来帮助我们解决这些问题,下面将为大家详细介绍。 1. Microsoft Fix It工具 Microsoft Fix It工具提供了另一种自动修复选项,它使用与问题解决包类似的技…

作者头像 李华
网站建设 2026/2/5 18:06:27

54、Windows系统服务管理与注册表编辑全解析

Windows系统服务管理与注册表编辑全解析 1. 使用服务控制台 在Windows系统中,服务的管理主要通过Microsoft管理控制台的“服务”插件(文件名为services.msc)来实现。以下是打开该插件的步骤: - 在搜索框中输入“服务”。 - 点击搜索结果列表顶部显示的“服务”应用程序…

作者头像 李华
网站建设 2026/2/6 13:14:34

56、系统管理高级工具的使用与任务自动化

系统管理高级工具的使用与任务自动化 在系统管理和任务执行过程中,我们常常会遇到需要高效处理重复性任务、精确管理系统设置的情况。下面将为大家详细介绍系统管理中的一些高级工具和任务自动化的方法。 1. 注册表操作 1.1 添加或删除键 添加键 :在左侧面板中选择新键的…

作者头像 李华
网站建设 2026/2/5 14:05:56

10、Windows 10 设备管理与更新全解析

Windows 10 设备管理与更新全解析 一、业务需求的演变与 MDM 的兴起 在当今数字化时代,业务需求正随着工业 4.0 的发展而发生深刻变化。员工的工作模式从传统的朝九晚五、局限于企业局域网内的计算机办公,转变为 724 小时的工作与个人活动模糊边界、随时随地使用多台设备办…

作者头像 李华
网站建设 2026/2/6 4:03:11

14、Windows 10安全特性深度解析

Windows 10安全特性深度解析 1. 基于虚拟化的安全(VBS) 在系统内存中保护凭据,需要借助基于虚拟化的安全(VBS)和凭据防护(Credential Guard)。VBS,也称为隔离用户模式(IUM),为系统软件提供了新的信任边界。它包含在Windows 10的企业版(包括LTSB)、教育版和物联网…

作者头像 李华