week3-[分支嵌套]方阵

week3-分支嵌套方阵

题目描述

有 n×mn\times mn×m 个人站成 nnn 行 mmm 列的方阵。我们想知道第 xxx 行 yyy 列的人的某个方向有没有人。

输入格式

输入共 222 行。

第 111 行输入 444 个正整数 n,m,x,yn,m,x,yn,m,x,y。

第 222 行输入 111 个字符为 U、D、L、R 其中之一,表示想知道方向上/下/左/右有没有人。

输出格式

输出共 111 行表示答案。如果有人则输出 YE5,否则输出 N0。

样例 #1

样例输入 #1

复制代码
3 3 1 1
L

样例输出 #1

复制代码
N0

样例 #2

样例输入 #2

复制代码
3 4 2 4
D

样例输出 #2

复制代码
YE5

提示

数据范围

对于所有数据,1≤n,m≤1001\leq n,m\leq 1001≤n,m≤100,1≤x≤n1\leq x \leq n1≤x≤n,1≤y≤m1 \leq y \leq m1≤y≤m。

🔎 题意理解

  • 方阵有 n 行 m 列,每个格子里有一个人。
  • 我们关注的是 第 x 行 y 列的人。
  • 输入一个方向(U=上,D=下,L=左,R=右)。
  • 需要判断在这个方向上是否还能看到人(即对应方向上是否存在格子)。

🧩 思路分析

  • 向上 (U) :如果 x > 1,说明上面还有人 → 输出 YE5;否则 N0。
  • 向下 (D) :如果 x < n,说明下面还有人 → 输出 YE5;否则 N0。
  • 向左 (L) :如果 y > 1,说明左边还有人 → 输出 YE5;否则 N0。
  • 向右 ® :如果 y < m,说明右边还有人 → 输出 YE5;否则 N0。

🖥️ C++代码实现

c++ 复制代码
#include <iostream>
using namespace std;

int main() {
    int n, m, x, y;
    char dir;
    cin >> n >> m >> x >> y;
    cin >> dir;

    if (dir == 'U') {
        if (x > 1) cout << "YE5";
        else cout << "N0";
    } else if (dir == 'D') {
        if (x < n) cout << "YE5";
        else cout << "N0";
    } else if (dir == 'L') {
        if (y > 1) cout << "YE5";
        else cout << "N0";
    } else if (dir == 'R') {
        if (y < m) cout << "YE5";
        else cout << "N0";
    }

    return 0;
}
相关推荐
武子康13 分钟前
Qwen-Drive 到底是什么:4B 级 VLM 如何成为驾驶策略底座
人工智能·算法·机器学习
坤坤子吖1 小时前
Linux网络编程:TCP服务器的多进程与多线程实现
linux·服务器·开发语言·网络·c++·笔记·学习
一晌小贪欢1 小时前
Python基础:第 09 篇 · while 循环:重复直到不满足
开发语言·c++·python·数据可视化·面向对象·python办公
zh_xuan2 小时前
LeeCode 496. 下一个更大元素I
数据结构·算法·栈·单调栈
机 _ 长2 小时前
05 智算运维|8 张卡怎么才算「捆成一张」:NCCL 实测与拓扑
运维·人工智能·算法·智算运维
xiaoye-duck2 小时前
《C++ 项目:手写大模型接入 SDK》LLMManager架构设计与实现
开发语言·网络·c++·语言模型
一条大祥脚2 小时前
CuTe 与 CuTe DSL:从 C++ 模板元编程到 Python DSL 的 GPU 编程演进
开发语言·c++·python·cutlass·cute·cute dsl
·present·3 小时前
CSAPP(lecture 13_02 Linking)
c语言·c++
早起CaiCai3 小时前
【2023-01 OM】利用深度学习算法融合异质观测实现海洋场降尺度
人工智能·深度学习·算法
梦里寻码3 小时前
我用 NestJS + Vue3 写了一套完整的研发管理系统(58 表 / 229 API / 130 项断言,全开源
前端·后端·算法