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

AtCoder AT_abc407_d [ABC407D] Domino Covering XOR

题目大意

H × W H\times W H×W 的矩阵,第 i i i 行第 j j j 列的数记为 a i , j a_{i,j} ai,j,现在要往上面铺若干(可以为零)块多米诺骨牌。多米诺骨牌是一个 1 × 2 1\times2 1×2 或者 2 × 1 2\times1 2×1 的长方形,能盖住两个数。问没有被盖住的数的异或和的最大值是多少。

思路

发现数据范围中保证了 H W ≤ 20 HW\le20 HW20,然后考虑到多米诺骨牌只能是相邻的两个格,所以爆搜就能过。由于数据范围太小了,所以可以采用如下的结构进行搜索:

dfs(x, y, k): 如果已经全部搜完ans = max(ans, k)返回如果这个格已经被多米诺骨牌盖住搜索下一个返回不放置多米诺骨牌,搜索下一个放置多米诺骨牌,标记当前位置,枚举所有可能的位置如果越界或者已经被盖住跳过标记计算异或和并搜索下一个取消标记

标记可以使用回溯法,用一个二维数组;计算异或和直接使用 ^ 符号。

代码

AC 记录:Submission #66114498。

由于已经给出了伪代码,不再给出详细代码,如有需要请私信联系。

http://www.xdnf.cn/news/627499.html

相关文章:

  • 【Web前端】jQuery入门与基础(二)
  • 免费PDF工具-PDF24V9.16.0【win7专用版】
  • TypeScript基础数据类型详解总结
  • 常见的图像生成模型
  • 嵌入式开发学习日志(linux系统编程--进程(1))Day27
  • winsever2016Web服务器平台安装与配置
  • python训练营day34
  • TIT-2014《Randomized Dimensionality Reduction for $k$-means Clustering》
  • 第十天的尝试
  • 快速排序算法的C++和C语言对比
  • Python实用工具:文件批量重命名器
  • Unity3D仿星露谷物语开发49之创建云杉树
  • 常见算法题目3 -反转字符串
  • 2025年—ComfyUI_最新插件推荐及使用(实时更新)
  • 保姆式一步一步制作B端左侧菜单栏
  • 游园安排--最长上升子序列+输出序列
  • 力扣:《螺旋矩阵》系列题目
  • Vant4+Vue3+Vite开发搭建教程
  • 【Redis】分布式缓存的一系列问题(持久化,主从集群,哨兵,分片集群)
  • 解决Docker容器内yum: not found、apt: not found、apk: command not found等命令找不到问题
  • 开发者工具箱-鸿蒙颜色转换器开发笔记
  • python打卡训练营打卡记录day35
  • 《算法导论(第4版)》阅读笔记:p127-p133
  • C语言 — 内存函数和数据的存储
  • 【Code Agent Benchmark】论文分享No.15:TAU-Bench
  • Windows下编译Zipios
  • 线性回归原理推导与应用(七):逻辑回归原理与公式推导
  • 解决input框被禁用后无法添加点击事件的几个方案
  • 前端大文件上传性能优化实战:分片上传分析与实战
  • 构建Harbor私有镜像库