[蓝桥杯2022省赛] X 图形

X 图形

问题描述

给定一个字母矩阵。一个 X 图形由中心点和由中心点向四个 4545 度斜线方向引出的直线段组成,四条线段的长度相同,而且四条线段上的字母和中心点的字母相同。

一个 X 图形可以使用三个整数r,c,L 来描述,其中 r,c 表示中心点位于第 r 行第 c 列,正整数 L 表示引出的直线段的长度。 对于 1 到 L 之间的每个整数 i,X 图形满足:第r−i 行第 c−i 列与第 r 行第 c 列相同,第 r−i 行第c+i 列与第 r 行第 c 列相同,第 r+i 行第 c−i 列与第 r 行第 c 列相同,第 r+i 行第 c+i 列与第 r 行第 c 列相同。

例如,对于下面的字母矩阵中,所有的字母 L 组成一个 X图形,中间的 5 个 L 也组成一个 X 图形。所有字母 Q 组成了一个 X 图形。

给定一个字母矩阵,请求其中有多少个 X 图形。

输入格式

输入第一行包含两个整数 n,m,分别表示字母矩阵的行数和列数。

接下来 n 行,每行 m 个大写字母,为给定的矩阵。

输出格式

输出一行,包含一个整数,表示答案。

样例输入
5 6
LAAALA
ALQLQA
AALQAA
ALQLQA
LAAALA

样例输出
3

评测用例规模与约定

对于 50% 的评测用例,1 <= n, m <= 10。

对于所有评测用例,1 <= n, m <= 100。

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 256M

总通过次数: 455  |  总提交次数: 589  |  通过率: 77.2%

代码分享:

#include <iostream>
using namespace std;
int main()
{
  int n,m,sum=0;
  cin>>n>>m;
  char s[101][101];
  for(int i=0;i<n;i++){
    for(int j=0;j<m;j++){
      cin>>s[i][j];
    }
  }//字母矩阵的输入,i表示行,j表示列
  for(int i=1;i<n-1;i++){
    for(int j=1;j<m-1;j++){
            char w=s[i][j];//w表示中心点字符
            int k=1;
        //k用来表示与中心点的距离
        while(w==s[i-k][j-k]&&w==s[i-k][j+k]&&w==s[i+k][j-k]&&w==s[i+k][j+k]){
          sum++;
          k++;
        }
      }
    }
  cout<<sum;//输出最终找到的X的个数
  return 0;
}//代码由CDDN博主鑫鑫向栄分享

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/279123.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

stm32中的i2c协议

stm32中I2C 文章目录 stm32中I2CI2C 协议简介I2C物理层协议层I2C基本读写过程 **通讯的起始和停止信号****数据有效性****地址及数据方向****响应** STM32的I2C特性及架构**STM32** **的** I2C外设简介STM32 的 I 2C 架构剖析通讯引脚 通讯过程主发送器主接收器 I2C初始化结构体…

工程(十六)——自己数据集跑Fast_livo

一、基础环境 Ubuntu20.04 ROS noetic PCL 1.8 Eigen 3.3.4 Sophus git clone https://github.com/strasdat/Sophus.git cd Sophus git checkout a621ff mkdir build && cd build && cmake .. make sudo make install 下面两个直接把包下载下来一起编译…

swing快速入门(三十二)消息对话框

注释很详细&#xff0c;直接上代码 新增内容 1.自定义对话框前列图标 2.消息对话框的若干种形式 package swing21_30;import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent;public class swing_test_30 {// 定义一个JFrameJFrame jFrame new JFram…

React 、Vue进度 条首屏加载制作

React 大家都听说过&#xff0c;是一个非常出名的前端 框架 &#xff0c;目前在公司 用的比较多的两个前端框架 &#xff0c;一个是 React , 一个 是 Vue 2 、3 &#xff0c;公司 的首页 &#xff0c;后台 前端部分 都是 以这两个为主 &#xff0c;做了 不下 数十个 项目 但是 …

大数据背后的绿色收割:基于Hadoop的农产品价格信息智能分析

大数据背后的绿色收割&#xff1a;基于Hadoop的农产品价格信息智能分析 引言正文1. 数据获取与准备2. 数据清洗与处理3. Hadoop数据分析引擎的运用4. MySQL数据库的集成5. 创新性的可视化6. 结论与展望 结语 引言 随着信息技术的不断发展&#xff0c;农业领域也在数字化的浪潮…

【2023年终总结】纵是一路仆仆风尘,也莫忘了仰头

文章目录 1. 写在前面2. 关于生活3. 关于工作4. 关于以后 【作者主页】&#xff1a;吴秋霖 【作者介绍】&#xff1a;Python领域优质创作者、阿里云博客专家、华为云享专家。长期致力于Python与爬虫领域研究与开发工作&#xff01; 【作者推荐】&#xff1a;对JS逆向感兴趣的朋…

阿里云2核2G3M服务器放几个网站?

阿里云2核2g3m服务器可以放几个网站&#xff1f;12个网站&#xff0c;阿里云服务器网的2核2G服务器上安装了12个网站&#xff0c;甚至还可以更多&#xff0c;具体放几个网站取决于网站的访客数量&#xff0c;像阿里云服务器网aliyunfuwuqi.com小编的网站日访问量都很少&#xf…

三路电源互备自投电路

当供电源停电时&#xff0c;主备用电源自动投入运行&#xff0c;当主备用电源断电时&#xff0c;则次备用电源自动投入运行&#xff0c;从而大大提高供电的可靠性。

基于three.js的室内全景3D展馆案例分享

先看效果图 实现了第一人称行走&#xff0c;WASD点击目标画册进行预览查看位置音乐播放环绕地面镜面反光碰撞检测等等. 地址在gitee上gallery: 数字展馆概念的demo项目&#xff0c;本项目中使用的技术栈为three.js 有兴趣的伙伴可以去下载看看&#xff0c;有这方面的项目应该能…

Python FastApi连接oracle进行查询

这边技术选型是cx_oracle进行连接查询&#xff0c;cx_oracle的使用首先要有官方的客户端才能连接到数据库&#xff0c;python并不自带客户端。我用是Python3.9 安装客户端 可以到官网在选择最新版进行下载。 Instant Client for Microsoft Windows (x64) 64-bit 或者直接从我…

maven命令行安装依赖测试

mvn dependency:get -DgroupIdorg.springframework -DartifactIdspring-core -Dversion5.3.9作用&#xff1a;可用于测试配置环境变量后&#xff0c;能否下载依赖到本地仓库

【SpringCloud】从实际业务问题出发去分析Eureka-Server端源码

文章目录 前言1.EnableEurekaServer2.初始化缓存3.jersey应用程序构建3.1注册jeseryFilter3.2构建JerseyApplication 4.处理注册请求5.registry&#xff08;&#xff09; 前言 前段时间遇到了一个业务问题就是k8s滚动发布Eureka微服务的过程中接口会有很多告警&#xff0c;当时…

nacos入门篇001-安装与启动

1、下载zip包 我这里下载的是版本2.2.0 Nacos 快速开始 2、修改配置文件 2.1集群模式修改成单例模式 vi startup.sh 2.2 修改数据库配置信息 3、初始化数据库 3.1 创建db名称&#xff1a;db_nacos 3.2 执行mysql-schema.sql 3.3 执行完截图&#xff1a; 4、运行脚本启动 …

实现区域地图散点图效果,vue+echart地图+散点图

1.效果图 2.准备工作,在main.js和index.js文件中添加以下内容 main.js app.use(BaiduMap, {// ak 是在百度地图开发者平台申请的密钥 详见 http://lbsyun.baidu.com/apiconsole/key */ak: sRDDfAKpCSG5iF1rvwph4Q95M6tDCApL,// v:3.0, // 默认使用3.0// type: WebGL // ||API…

【Kubernetes】kubectl 常用命令

kubectl 常用命令 1.基础命令2.部署命令3.集群管理命令4.故障诊断与调试命令5.高级命令6.设置命令7.其他命令 1.基础命令 命令 说明 create通过文件名或标准输入创建 Kubernetes 的资源expose将 Kubernetes 的资源展露为一个服务run在集群中运行一个特定的镜像set修改对象的特…

初识Java并发,一问读懂Java并发知识文集(3)

&#x1f3c6;作者简介&#xff0c;普修罗双战士&#xff0c;一直追求不断学习和成长&#xff0c;在技术的道路上持续探索和实践。 &#x1f3c6;多年互联网行业从业经验&#xff0c;历任核心研发工程师&#xff0c;项目技术负责人。 &#x1f389;欢迎 &#x1f44d;点赞✍评论…

Windows环境检验NodeJs安装是否成功

Windows环境检验NodeJs安装是否成功 检验方法 1、winR 打开运行窗口&#xff0c;在此窗口输入cmd命令 2、进入命令提示符窗口&#xff0c;分别输入以下命令&#xff0c;显示版本号&#xff0c;则安装成功 node -v&#xff1a;显示安装的nodejs版本npm -v&#xff1a;显示安装…

GOM转996视频教程(急速转换)新手小白必看

GOM转996视频教程(急速转换)新手小白必看 GOM转996视频教程(急速转换)视频内容详细有声音&#xff0c;并且附件中包含了视频中所用到的工具&#xff0c;可以说是新手小白的理解教程。 1.GOM版本的介绍以及996单机搭建.wmv 2.地图资源分类与打包.wmv 3.NPC资源分类与打包.wmv 4…

MIT线性代数笔记-第33讲-复习三

目录 33.复习三打赏 33.复习三 已知 d u ⃗ d t A u ⃗ [ 0 − 1 0 1 0 − 1 0 1 0 ] u ⃗ \dfrac{d \vec{u}}{dt} A \vec{u} \begin{bmatrix} 0 & -1 & 0 \\ 1 & 0 & -1 \\ 0 & 1 & 0 \end{bmatrix} \vec{u} dtdu ​Au ​010​−101​0−10​ ​…

Conda:Python环境管理的瑞士军刀

在数据科学和机器学习的世界中&#xff0c;管理各种库和依赖关系的重要性不容忽视。Conda 就是为此而生的强大工具。本文将深入探讨 Conda 的简介、功能以及使用示例&#xff0c;帮助你更好地理解和使用这个工具。 Conda 简介 Conda 是一个开源的包管理系统和环境管理系统&am…
最新文章