当前位置: 首页 > news >正文

2024年第十五届蓝桥杯青少组C++国赛—割点

割点

题目描述

一张棋盘由n行 m 列的网格矩阵组成,每个网格中最多放一颗棋子。当前棋盘上已有若干棋子。所有水平方向或竖直方向上相邻的棋子属于同一连通块。

现给定棋盘上所有棋子的位置,如果要使棋盘上出现两个及以上的棋子连通块,请问最少需要移除几颗棋子?如果无论怎么移除棋子都无法满足要求,则输出 -1。(注:只能通过移除棋子的操作来使棋盘上出现两个及以上的棋子连通块。

由下图可知,最少需要移除 2颗棋子才能使棋盘上出现两个及以上的棋子连通块。

例如:n=3,m=3,3x3的棋盘示意图如下: 

image

移除后棋盘示意图如下: 

image

故答案为 2。

输入格式

本题每个测试点包含多组测试数据第一行包含一个整数T(1 ≤ T ≤ 50),表示数据组数接下来T组数据,每组数据第一行输入两个整数 和 m(1 ≤ n,m ≤ 60),分别表示组成棋盘的网格矩阵的行数和列数,整数之间以一个空格隔开

完整题目可前往题库中心查看,题库中心支持在线编程,涵盖白名单赛事真题及考级真题,助力巩固知识,备战赛事。

https://www.hixinao.com/tiku/cpp/show-3782.html

http://www.lryc.cn/news/505209.html

相关文章:

  • 【软件开发】做出技术决策
  • Airborne使用教程
  • WPF实现曲线数据展示【案例:震动数据分析】
  • EasyExcel 动态设置表格的背景颜色和排列
  • 【 C++11 】类的新功能
  • 防止SQL注入:PHP安全最佳实践
  • 自动化生产或质量检测准备工作杂记
  • 张志辰医生
  • CodeMirror 如何动态更新definemode
  • 舵机SG90详解
  • 程序设计考题汇总(四:SQL练习)
  • 明达IOT平台助力工业废水运维智能化
  • 深入理解 Ansible Playbook:组件与实战
  • JavaEE初阶——多线程(线程安全-锁)
  • Stable Diffusion 提示词语法
  • 【功能安全】安全确认
  • 在pycharm2024.3.1中配置anaconda3-2024-06环境
  • linux不同发行版中的主要差异
  • 概率论得学习和整理29: 用EXCEL 描述二项分布
  • C++打造局域网聊天室第九课: 客户端队列及其处理线程
  • 请求go web后端接口 java安卓端播放视频
  • XML Schema 复合类型 - 混合内容
  • 第8章 搬移特性
  • ARM/Linux嵌入式面经(五九):海尔
  • java中的List、数组和set
  • freeswitch(配置文件结构)
  • ARMS 用户体验监控正式发布原生鸿蒙应用 SDK
  • 使用 esrally race 测试 Elasticsearch 性能:实践指南
  • OkHttp源码分析:分发器任务调配,拦截器责任链设计,连接池socket复用
  • 中国计算机学会计算机视觉专委会携手合合信息举办企业交流活动,为AI安全治理打开“新思路”