news 2026/6/9 23:58:24

leetcode 840

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
leetcode 840

840: 矩阵中的幻方

数学证明:1.幻方正中心一定是 5

2.无需计算第三行、第三列的和

3.无需计算对角线的和

如果 3×3 矩阵:

  • 正中心的数是 5。
  • 包含 1 到 9 所有整数。
  • 前两行的和都是 15。
  • 前两列的和都是 15。

下面证明:矩阵对角线的和一定都是 15。

如何快速判断矩阵包含 1 到 9 所有数?可以把数字压缩到一个二进制数 mask 中,mask 从低到高的 i 位是 1 表示 i 在矩阵中。矩阵包含 1 到 9 所有数相当于 mask=1111111110(2)=2^10−2=1022。

mask |= 1 << x;

mask == (1 << 10) - 2

二进制:把1左移10位——10000000000(十进制 1024)

1024-2=1022=1111111110(2),表示 mask 的第 1 位到第 9 位全部为 1,第 0 位为 0。

int r_sum[3]{},c_sum[3]{};

等价于:

int r_sum[3] = {0, 0, 0}; int c_sum[3] = {0, 0, 0};
class Solution { public: int numMagicSquaresInside(vector<vector<int>>& grid) { int m=grid.size(),n=grid[0].size(); int ans=0; for(int i=0;i<m-2;i++){ for(int j=0;j<n-2;j++){ //遍历左上角 if(grid[i+1][j+1]!=5) continue; int mask=0; int r_sum[3]{},c_sum[3]{}; for(int r=0;r<3;r++){ for(int c=0;c<3;c++){ int x=grid[i+r][j+c]; mask|=1<<x; //把mask的第x位设为1 r_sum[r]+=x; c_sum[c]+=x; } } if(mask==(1<<10)-2 && r_sum[0]==15 && r_sum[1]==15 && c_sum[0]==15 && c_sum[1]==15){ ans++; } } } return ans; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/8 19:06:04

智能虚拟导购终极方案:10分钟搭建实时交互推荐系统

智能虚拟导购终极方案&#xff1a;10分钟搭建实时交互推荐系统 【免费下载链接】metahuman-stream 项目地址: https://gitcode.com/GitHub_Trending/me/metahuman-stream 零售行业数字化转型的三大痛点与创新解决方案 传统零售企业正面临前所未有的挑战&#xff1a;获…

作者头像 李华
网站建设 2026/6/8 18:55:51

HTML转Sketch工具:5步实现网页设计自动化转换

HTML转Sketch工具&#xff1a;5步实现网页设计自动化转换 【免费下载链接】html2sketch parser HTML to Sketch JSON 项目地址: https://gitcode.com/gh_mirrors/ht/html2sketch 在当今数字化设计时代&#xff0c;设计师和开发者常常需要在网页设计与专业设计工具之间进…

作者头像 李华
网站建设 2026/6/9 21:20:36

51单片机LCD1602在智能电能表中的应用解析

经典永不过时&#xff1a;51单片机驱动LCD1602如何撑起智能电能表的“脸面”你有没有想过&#xff0c;家里那块默默计量用电量的电表&#xff0c;是怎么把“用了多少度电”这几个字清清楚楚显示出来的&#xff1f;尤其是在没有联网、断电重启后仍能正常工作的老式智能电表中&am…

作者头像 李华
网站建设 2026/6/9 22:36:02

实验室排课系统的设计与实现开题报告

开题报告填写要求1&#xff0e;开题报告作为毕业设计&#xff08;论文&#xff09;答辩委员会对学生答辩资格审查的依据材料之一&#xff0c;应在指导教师指导下&#xff0c;由学生在毕业设计&#xff08;论文&#xff09;工作前期完成&#xff0c;经指导教师签署意见、系&…

作者头像 李华
网站建设 2026/6/9 21:19:43

Vue数据表格组件快速配置指南:3分钟搭建动态表格

Vue数据表格组件快速配置指南&#xff1a;3分钟搭建动态表格 【免费下载链接】vue-table data table simplify! -- vuetable is a Vue.js component that will automatically request (JSON) data from the server and display them nicely in html table with swappable/exten…

作者头像 李华