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

【算法】MT2 棋子翻转

✨题目链接:

MT2 棋子翻转


✨题目描述 

在 4x4 的棋盘上摆满了黑白棋子,黑白两色棋子的位置和数目随机,其中0代表白色,1代表黑色;左上角坐标为 (1,1) ,右下角坐标为 (4,4) 。

现在依次有一些翻转操作,要对以给定翻转坐标(x,y)(也即第x行第y列)为中心的上下左右四个棋子的颜色进行翻转。

给定两个数组 A 和 f ,分别代表 初始棋盘 和 哪些要进行翻转的位置(x,y) ,请返回经过所有翻转操作后的棋盘。

 

✨输入描述:

例如输入[[0,0,1,1],[1,0,1,0],[0,1,1,0],[0,0,1,0]],[[2,2],[3,3],[4,4]]时,初始键盘如下图所示:

✨输出描述:

对应的输出为[[0,1,1,1],[0,0,1,0],[0,1,1,0],[0,0,1,0]],如下图所示:

 

✨解题思路

  •  每获得一次坐标,把四个位置都设置一遍即可
  • 需要 注意判断边界情况
  • 注意:f 数组中给的是坐标值 所以传参时要 -1

✨代码
 

class Solution {
public:void reversecolor(vector<vector<int> >& A, int x,int y){//上if(x-1>=0){A[x-1][y]==0?A[x-1][y]=1:A[x-1][y]=0;}//下if(x+1<4){A[x+1][y]==0?A[x+1][y]=1:A[x+1][y]=0;}//左if(y-1>=0){A[x][y-1]==0?A[x][y-1]=1:A[x][y-1]=0;}//右if(y+1<4){A[x][y+1]==0?A[x][y+1]=1:A[x][y+1]=0;}}vector<vector<int> > flipChess(vector<vector<int> >& A, vector<vector<int> >& f) {for(int i=0;i<f.size();i++){reversecolor(A, f[i][0]-1,f[i][1]-1);}return A;}
};


※ 如果文章对你有帮助的话,可以点赞收藏!!谢谢支持

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

相关文章:

  • 头颈肿瘤在PET/CT中的分割:HECKTOR挑战赛| 文献速递-深度学习肿瘤自动分割
  • Kafka重平衡导致无限循环消费问题
  • 执行shell脚本时为什么要写成./test.sh,而不是test.sh?
  • 【人工智能】第一部分:ChatGPT的基本概念和技术背景
  • 雪花算法详解及源码分析
  • Golang TCP网络编程
  • 先进制造aps专题十 aps项目成功指南
  • 实现Dropdown下拉菜单监听键盘上下键选中功能-React
  • Ubuntu系统升级k8s节点的node节点遇到的问题
  • 前端将DOM元素导出为图片
  • 变现 5w+,一个被严重低估的 AI 蓝海赛道,居然用这个免费的AI绘画工具就能做!
  • Ubuntu server 24 (Linux) 安装部署smartdns 搭建智能DNS服务器
  • 正点原子[第二期]Linux之ARM(MX6U)裸机篇学习笔记-24.5,6 SPI驱动实验-ICM20608 ADC采样值
  • 安装vllm的时候卡主:Collecting vllm-nccl-cu12<2.19,>=2.18 (from vllm)
  • O2O : Finetuning Offline World Models in the Real World
  • 嵌入式学习(Day:31 网络编程2:TCP)
  • 正则表达式 0.1v
  • 免费的仓库出入库管理软件有哪些?
  • python 办公自动化-生成ppt文本和图
  • 「动态规划」买卖股票的最佳时机
  • Java 并发编程面试二
  • 成功解决“ModuleNotFoundError: No Module Named ‘utils’”错误的全面指南
  • Nvidia Jetson/Orin +FPGA+AI大算力边缘计算盒子:公路智能巡检解决方案
  • 【Maxcompute】geohash转经纬度,经纬度转geohash,计算geohash九宫格
  • 【R语言基础】如何更新R版本
  • Python知识点10---函数
  • 有哪些挣钱软件一天能赚几十元?盘点十个能长期做下去的挣钱软件
  • CentOS7安装MySQL教程
  • 师彼长技以助己(3)逻辑思维
  • LeetCode:反转链表I