问题描述
把 1 ~ 16 的数字填入 4 x 4 的方格中,使得行、列以及两个对角线的和都相等,满足这样的特征时称为:四阶幻方。

四阶幻方可能有很多方案,如果固定左上角为1,请计算一共有多少种方案。

比如:
1 2 15 16
12 14 3 5
13 7 10 4
8 11 6 9

以及:
1 12 13 8
2 14 7 11
15 3 10 6
16 5 4 9

就可以算为两种不同的方案。

答案提交
请提交左上角固定为 1 时的所有方案数字,不要填写任何多余内容或说明文字。


答案:416


题解
DFS:
要运行 90s 左右

#include <iostream>
using namespace std;const int N = 20;int a[N], tmp, ans;
bool st[N];void dfs(int u)
{if(u == 3) tmp = 1 + a[0] + a[1] + a[2];                            // 四行 if(u == 7 && tmp != a[3] + a[4] + a[5] + a[6]) return;if(u == 11 && tmp != a[7] + a[8] + a[9] + a[10]) return;if(u == 15 && tmp != a[11] + a[12] + a[13] + a[14]) return;if(u == 12 && tmp != 1 + a[3] + a[7] + a[11]) return;               // 四列 if(u == 13 && tmp != a[0] + a[4] + a[8] + a[12]) return;if(u == 14 && tmp != a[1] + a[5] + a[9] + a[13]) return;if(u == 15 && tmp != a[2] + a[6] + a[10] + a[14]) return;if(u == 15 && tmp != 1 + a[4] + a[9] + a[14]) return;               // 两条对角线 if(u == 12 && tmp != a[2] + a[5] + a[8] + a[11]) return;if(u == 15) ans ++;for (int i = 2; i <= 16; i ++){if(!st[i]){a[u] = i;st[i] = true;dfs(u + 1);st[i] = false;}}
}int main()
{dfs(0);cout << ans << endl;return 0;
}

ps:四阶幻方其实是有定义的,行、列、对角线之和都是 34,但是我觉得大多数人都不知道吧 (@_@;)

第六届蓝桥杯(国赛)——四阶幻方相关推荐

  1. 2015年第六届蓝桥杯国赛试题(JavaA组)

    1.结果填空 (满分15分) 2.结果填空 (满分35分) 3.代码填空 (满分31分) 4.程序设计(满分41分) 5.程序设计(满分75分) 6.程序设计(满分103分) 1.标题:胡同门牌号 小 ...

  2. 第六届蓝桥杯国赛 穿越雷区

    题目描述 X星的坦克战车很奇怪,它必须交替地穿越正能量辐射区和负能量辐射区才能保持正常运转,否则将报废. 某坦克需要从A区到B区去(A,B区本身是安全区,没有正能量或负能量特征),怎样走才能路径最短? ...

  3. 2015年第六届蓝桥杯 - 省赛 - Java大学B组 - A. 三角形面积

    三角形面积 如[图1]所示.图中的所有小方格面积都是1. 那么,图中的三角形面积应该是多少呢? 请填写三角形的面积.不要填写任何多余内容或说明性文字. Ideas 这道题跟2018年第九届蓝桥杯 - ...

  4. 2022年十三届蓝桥杯国赛(C/C++大学B组)个人题解

    2022年十三届蓝桥杯国赛(C/C++大学B组)个人题解 更新:成绩出来了,估分50分左右,最后拿了个国二,还差点到国一,有点出乎意料,挺满意了挺满意了. 去年国赛基本都是暴力,最后国三都没拿到(我是 ...

  5. 第十三届蓝桥杯国赛真题 PythonB组 复盘以及获奖感言(国一!!!)

    第十三届蓝桥杯国赛真题 PythonB组 复盘以及获奖感言(国一) 文章目录 第十三届蓝桥杯国赛真题 PythonB组 复盘以及获奖感言(国一)

  6. [第六届蓝桥杯省赛C++B组]三羊献瑞

    题目来源:第六届蓝桥杯省赛C++B组 算法标签:全排列 题目描述: 观察下面的加法算式: 其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字. 请你填写"三羊献瑞"所代表的4 ...

  7. 太空大战-第14届蓝桥杯国赛Scratch真题中级组第6题

    [导读]:超平老师的<Scratch蓝桥杯真题解析100讲>已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第148讲. 太空大战,本题是2023年5月28日上午 ...

  8. 5月29日第十三届蓝桥杯国赛python中高年级组 小鸟看对方 题目、答案和解析

    5月29日的蓝桥杯国赛来了,不确定这是第几题了,sorry哈 目录 题目: 输入描述: 输出描述: 样例输入: 样例输出: 思路: 代码: 小结: 题目: 在一根电线上落有N只小鸟,有的小鸟头向左看, ...

  9. 第九届蓝桥杯国赛总结

    蓝桥杯国赛算是结束了,也是借着这个机会去北京玩了两天,总体老说国赛蓝桥杯对我的感触还是非常深的,因为这是我第一次参加这样大规模的比赛 当时,检查完了准考证.身份证还有签上了名字之后,我们就进了机房,但 ...

  10. 第12届蓝桥杯国赛真题剖析-2021年5月29日Scratch编程初中级组

    [导读]:超平老师的<Scratch蓝桥杯真题解析100讲>已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第128讲. 第12届蓝桥杯Scratch国赛真题,这 ...

最新文章

  1. 【项目实战】P2P金融数据指标分析
  2. Matlab的不同进制转换
  3. [译] Fiber内幕:深入概述React新的协调算法
  4. CF1415D:XOR-gun(异或)
  5. 面向对象(二)——三大特性(封装、继承、多态)
  6. phoenix 开发API系列(一)创建简单的http api
  7. 方便好用的论文管理软件EndNote X9 + PDF阅读编辑器Adobe Acrobat DC(1)
  8. linux 小度 驱动_糯米WiFi安装Linux驱动 (同时支持百度WiFi、小米WiFi、腾讯全民WiFi、360WiFi)...
  9. 计算机常见故障判断与排除,电脑常见故障诊断与排除从新手到高手
  10. 3航空公司客户价值分析
  11. shared_ptr中的owner_before解析(最易懂,最全面)
  12. 双系统安装 Ubuntu 18.04 以及删除双系统中的 Ubuntu 的方法
  13. [线性代数]向量2-范数三角不等式证明
  14. 防治脖子痛的简易保健操
  15. zk-snark的算法详解
  16. proxifier for mac 破解版 v2.19
  17. 其他——调试时chrom崩溃
  18. Simulink —— PMSM基础及FOC控制模型
  19. 微信小程序解析unionid
  20. 联筑赚:盘扣脚手架构件维护保养及退场验收规范

热门文章

  1. UWB超宽带定位技术,实时厘米级高精度定位应用,超宽带传输技术
  2. 注水定理大白话概括原理,比起那种繁琐的公式,这样的解释看着真舒坦
  3. [HECTF 2022]—Web WirteUp
  4. Scapy介绍官方文档翻译
  5. echarts地图 图例 visualMap
  6. Python爬虫编程思想(87):项目实战--抓取豆瓣电影排行榜
  7. GB51309实施后对于消防应急照明和疏散指示系统在城市隧道应用中的影响
  8. 中国哲学和希腊哲学比较
  9. python在线编程平台-少儿编程最实用!国内外可视化在线Python编程平台推荐!
  10. 【python 类和对象实例】