六角幻方—题解

蓝桥杯国赛C++A组B组题解整理(第八、七、六、五、四届) 【写在前面的话19.04.04】 今年省赛的结果出的意外得快,有很多小伙伴来和我分享他们进了省一的喜悦,并问我啥时候更新国赛题解,emmm……不是我不想更新,实在是抽不出时间,我现在手上还有四个比赛,忙成狗QAQ 题解嘛,有缘再更……虽然不更新题解,但是我决定这次提前写一点注意事项吧,省得大家来不及准备hhhhh 首先要注意的一点是,蓝桥杯和别的比赛不同的是,并不是你进了省一就默认你国三了,如... 阅读详情
标题:六角幻方

    把 1 2 3 ... 19 共19个整数排列成六角形状,如下:


    * * *
   * * * *
  * * * * *
   * * * * 
    * * *


    要求每个直线上的数字之和必须相等。共有15条直线哦!


    再给点线索吧!我们预先填好了2个数字,第一行的头两个数字是:15 13,参见图【p1.png】,黄色一行为所求。


    请你填写出中间一行的5个数字。数字间用空格分开。

    这是一行用空格分开的整数,请通过浏览器提交答案,不要填写任何多余的内容(比如说明性的文字等)


解题思路:      DFS


源代码:






/**
 * 
 *  六角幻方搜索
 * 
 *
 */

public class Main1
{
	static int table[] = {1,2,3,4,5,6,7,8,9,10,11,12,14,16,17,18,19}; //内容
	public static void main(String[] args)
	{
		int arr[] = new int[17];
		boolean step[]= new boolean[20];
		step[15] = step[13] = true;
		
		dfs(arr, 0, step);
	}
	
	private static void dfs(int[] arr, int ws, boolean[] step)
	{
		if (ws == 5)
		{
			if (28 + arr[0] != arr[1] + arr[2] + arr[3] + arr[4])return;
		}
		if (ws == 6)
		{
			if (28 + arr[0] != 15 + arr[1] + arr[5]) return ;
		}
		if (ws == 10)
		{
			if (28 + arr[0] != arr[5] + arr[6] + arr[7] + arr[8] + arr[9])return;
		    if (28 + arr[0] != arr[0] + arr[4] + arr[9]) return;
		}
		if (ws == 11)
		{
			if (28 + arr[0] != 13 + arr[2] + arr[6] + arr[10]) return;
		}
		if (ws == 14)
		{
			if (28 + arr[0] != arr[10] + arr[11] + arr[12] + arr[13])return;
			if (28 + arr[0] != 13 + arr[3] + arr[8] + arr[13]) return;
		}
		if (ws == 15)
		{
			if (28 + arr[0] != arr[5] + arr[10] + arr[14]) return;
			if (28 + arr[0] != arr[0] + arr[3] + arr[7] + arr[11]+arr[14])return;
		}
		if (ws == 17)
		{
			if (28 + arr[0] != arr[14] + arr[15]+arr[16]) return;
			if (28 + arr[0] !=15+ arr[2]+arr[7] + arr[12]+arr[16]) return;
			if (28 + arr[0] != arr[9] + arr[13] + arr[16]) return;
			
			output(arr);return;
		}
		 for (int i = 0; i < table.length; i++)
		 {
			if (step[table[i]] == false)
			{
				step[table[i]] = true; 
				arr[ws] = table[i];
				dfs(arr, ws+1, step);
				step[table[i]] = false;
			}
		 }
	}

	private static void output(int[] arr)
	{
         for (int i = 0; i < arr.length; i++)
         {
        	 System.out.print(arr[i] + " ");
         }
	     System.out.println();
	}
}


六角幻方算法与实现:数学游戏的编程挑战 六角幻方,又称为蜂巢幻方或六边形幻方,是一种在数学游戏中具有一定历史的智力谜题。它由一系列带有数字的六边形组成,这些六边形填满在规则的六边形网格中,其排列遵循一定的数学原则,以满足特定的条件。在这个游戏中,玩家需要移动六边形,以确保网格中的每一行、每一列以及对角线上的数字之和都等于预定的目标值。这一目标值被称为幻方的常数或幻和。递归算法是一种在解决问题时将问题分解成相似子问题的策略,并调用自身来解决这些子问题的方法。在六角幻方的解决过程中,递归算法的应用体现在将一个大的问题分解成更小、更易管理的部分。 阅读详情

相关推荐

六角幻方_六角幻方_

因篇幅问题,源文件里有详细功能说明,以及源代码

六角幻方(高斯消元法求解)

看了网上很多都是用dfs解决的,于是自己就写了一篇用高斯消元法的解决方法 问题描述 把 1 2 3 … 19 共19个整数排列成六角形状,如下: 要求每个直线上的数字之和必须相等。共有15条直线哦! 再给点线索吧!我们预先填好了2个数字,第一行的头两个数字是:15 13,参见下图,黄色一行为所求。 请你填写出中间一行的5个数字。数字间用空格分开。 这是一行用空格分开的整数,请通过浏览器提交答案,不要填写任何多余的内容(比如说明性的文字等) 解法 把15条直线看成是15条方程,每一个圆看成一个未知数,且未知数

m0_46200304的博客 1956

AutoLisp文件(.lsp)从编写到加载运行:一份给CAD新手的避坑指南

本文为CAD新手提供了一份AutoLisp文件(.lsp)从编写到加载运行的完整指南,涵盖编写环境配置、文件加载流程、调试技巧及工程化实践建议。通过详细的步骤和常见错误解决方案,帮助用户避免常见陷阱,提升AutoLisp脚本的开发效率和应用效果。

weixin_29228203的博客 892

【回溯】B027_LQ_六角幻方 & 四阶幻方 & 九宫幻方 & 反幻方 & 魔方状态 & 纸牌三角形(恶心的剪枝)

把 1、2、3 … 19 共 19 个整数排列成六角形状,如下: 要求每个直线上的数字之和必须相等,共有 15 条 直线哦! 再给点线索吧!我们预先填好了 2 个数字,第一行的头两个数字是:15、13,如图。 请你填写出黄色一行的 5 个数字。数字间用空格分开 方法一:深搜+剪枝 思路 真的恶心, #include<bits/stdc++.h> using namespace std; int a[20]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,1

无敌兔0x01 877

GLM-5.2模型自部署实战:如何通过量化与vLLM优化实现远超官方API的推理速度

在大模型应用开发中,模型推理速度是影响用户体验和系统性能的核心指标。其原理在于通过优化计算图、内存管理和并行计算来提升吞吐量与降低延迟。技术价值体现在能够为高并发、低延迟的实时应用提供稳定高效的AI服务能力,广泛应用于智能客服、代码生成、内容创作等场景。其中,模型量化通过降低权重精度(如INT4/INT8)来大幅减少显存占用和计算量,而推理引擎(如vLLM)则通过连续批处理和PagedAttention等技术最大化硬件利用率。本文聚焦于GLM-5.2模型,详细阐述如何通过量化技术与vLLM推理引擎的深度优化

weixin_29032337的博客 319

物体检测之非极大值抑制:NMS、softNMS、softerNMS、IoU-Net

当前的物体检测算法为了保证召回率,对于同一个真实物体往往会有多个的候选框输出。由于多余的候选框会影响检测精度,因此需要利用NMS过滤掉重叠的候选框,得到最佳的预测输出。当前有如下几种较为常见的NMS方法, 1.基本NMS 非极大值抑制, 顾名思义就是抑制不是极大值的边框,这里的抑制通常是直接去掉冗余的边框。 这个过程涉及以下两个量化指标: 1.预测得分:NMS假设一个边框的预测得分越高,这个框...

LeoLee 1941

蓝桥杯——六角幻方

标题:六角幻方    把 1 2 3 ... 19 共19个整数排列成六角形状,如下:    * * *   * * * *  * * * * *   * * * *     * * *    要求每个直线上的数字之和必须相等。共有15条直线哦!    再给点线索吧!我们预先填好了2个数字,第一行的头两个数字是:15 13,参见图【p1.png】,黄色一行为所求。    请你填写出中间一行的5个数...

越努力,越幸运!!! 3473

在UI界面中播放视频_unity基础开发教程

之前我写过一篇在场景中播放视频的文章,但是在开发中有时候也会在UI的界面中播放视频,这期我们做一下在UI的界面中播放视频。操作步骤比较简单,到这里就完成了,如果有问题的话可以在评论区留言,下期见,拜拜!

为者常成,行者常至! 2006

2014年第五届蓝桥杯C/C++ A组国赛 —— 第二题:六角幻方

标题:六角幻方 把 1 2 3 … 19 共19个整数排列成六角形状,如下: * * * * * * * * * * * * * * * * * * * 要求每个直线上的数字之和必须相等。共有15条直线哦! 再给点线索吧!我们预先填好了2个数字,第一行的头两个数字是:15 13,参见图【p1.png】,黄色一行为所求。 请你填写出中间一行的5个数字。数字间用空...

Alex 1384

FC游戏Hack实战:从零开始修改游戏数据

本文以《忍者神龟3》为例,详细介绍了从零开始进行FC游戏Hack的完整实战流程。通过使用FCEUX模拟器和调试器,结合“递减法”精准定位生命值内存地址,并利用十六进制编辑器修改关键指令,最终实现“无限生命”效果。文章旨在引导读者理解游戏数据修改的核心原理与操作技巧,重温经典的同时深入计算机程序运行机制。

weixin_28366353的博客 356

基于GEC6818开发板+Linux+Qt设计的智能养老院出入管理系统(195)

当前,传统的养老院出入管理模式普遍存在信息更新滞后、数据统计繁琐、实时监控能力不足等问题,难以满足现代养老机构对安全管理与服务质量提升的需求。本系统设计正是针对这些问题,通过集成先进的硬件设备如高性能GEC6818开发板以及RFID刷卡模块,结合稳定高效的嵌入式Linux操作系统和QT开发框架,构建一套功能齐全、操作直观、响应迅速的智能出入管理系统。 该系统能自动记录并实时显示老人的进出时间,方便管理人员及时了解每位老人的活动轨迹,同时具备强大的后台管理功能,支持管理员便捷地进行老人信息的增删改查操作。通

1069

2014年第五届蓝桥杯Java程序设计本科B组决赛

1.国王的遗产 2.六角幻方 3.格子放鸡蛋 4.排列序数 5.幂一矩阵 6.供水设施 历届蓝桥杯Java程序设计本科B组决赛个人题解汇总: https://blog.youkuaiyun.com/daixinliangwyx/article/details/90033846 ...

daixinliangwyx的博客 454

我用GPT-5.5十分钟就搞定了论文创新点!全靠这三个提示词

各位同仁好,我是七哥。一个在高校里从事人工智能 相关领域研究,钻研用大模型AI实操的学术人。可以和七哥交流学术写作或Gemini、GPT、Claude 等大模型 学术实操相关问题,多多交流,相互成就,共同进步。多数研究者一写创新点就总觉得只有提出了全新的理论、颠覆了整个领域,才算真正的创新。但学术研究里的创新,有一半不是从零创造的,是在前人工作的基础上,准确找到还没人解决、或者没解决好的问题,而且真正能立住的创新通常都离不开以下这三个问题。第一,前人到底缺了什么。

智能AI让学术科研更容易 707

六角幻方java_2014年第五届蓝桥杯Java程序设计本科B组决赛 六角幻方(结果填空)...

2014年第五届蓝桥杯Java程序设计本科B组决赛个人题解汇总:https://blog.youkuaiyun.com/daixinliangwyx/article/details/89948727第二题标题:六角幻方把 1 2 3 ... 19 共19个整数排列成六角形状,如下:* * ** * * ** * * * ** * * ** * *要求每个直线上的数字之和必须相等。共有15条直线哦!再给点线索吧...

weixin_42128270的博客 190

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

2014年第五届蓝桥杯Java程序设计本科B组决赛 六角幻方(结果填空)

2014年第五届蓝桥杯Java程序设计本科B组决赛个人题解汇总: https://blog.youkuaiyun.com/daixinliangwyx/article/details/89948727 第二题 标题:六角幻方 把 1 2 3 ... 19 共19个整数排列成六角形状,如下: * * * * * * * * * * * * * * * * * *...

daixinliangwyx的博客 266

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

第五届蓝桥杯(国赛)——六角幻方

问题描述 把 1、2、3 … 19 共 19 个整数排列成六角形状,如下: 要求每个直线上的数字之和必须相等,共有 15 条 直线哦! 再给点线索吧!我们预先填好了 2 个数字,第一行的头两个数字是:15、13,如图。黄色一行为所求。 请你填写出中间一行的5个数字。数字间用空格分开。 答案提交 这是一行用空格分开的整数,请通过浏览器提交答案,不要填写任何多余的内容(比如说明性的文字等) 答案:9 6 5 2 16 题解 DFS: 17!= 3.5569 * 1014,直接求出所有排列是不可能的,所

六级不考550+不改名 635

2014年第五届蓝桥杯国赛试题及部分题解(Java本科B组)

1. 国王的遗产 标题:国王的遗产 X国是个小国。国王K有6个儿子。在临终前,K国王立下遗嘱:国王的一批牛作为遗产要分给他的6个儿子。 其中,大儿子分1/4,二儿子1/5,三儿子1/6,… 直到小儿子分1/9。 牛是活的,不能把一头牛切开分。 最后还剩下11头牛,分给管家。 请计算国王这批遗产中一共有多少头牛。 这是一个整数,请通过浏览器提交答案,不要填写任何多余的内容(比如说明性的文字) 解析:...

zmjのblog 521

2014第五届蓝桥杯JavaA组决赛(国赛)试题汇总及试题详解

蓝桥杯历年省赛真题汇总及题目详解 蓝桥杯历年决赛试题汇总及试题详解 目录 第一题:海盗分金币 第二题:六角幻方 第三题:格子放鸡蛋 第四题:排列序数 第五题:幂一矩阵 第六题:供水设施 题解待更新 第一题:海盗分金币 题目描述 有5个海盗,相约进行一次帆船比赛。 比赛中天气发生突变,他们被冲散了。 恰巧,他们都先后经过途中的一个无名的荒岛,并且每...

桀客 929

2014年蓝桥杯国赛Java A组部分题解

1.【结果填空】 标题:海盗分金币 有5个海盗,相约进行一次帆船比赛。 比赛中天气发生突变,他们被冲散了。 恰巧,他们都先后经过途中的一个无名的荒岛,并且每个人都信心满满,觉得自己是第一个经过该岛的人。 第一个人在沙滩上发现了一堆金币。他把金币分成5等份。发现刚好少一个金币。他就从自己口袋拿出一个金币补充进去,然后把属于自己的那份拿走。 ...

gq__97的博客 719

2014年第五届蓝桥杯国赛试题及详解(Java本科B组)

蓝桥杯历年真题题目及题解目录汇总 结果填空 (满分10分) 结果填空 (满分45分) 代码填空 (满分30分) 程序设计(满分35分) 程序设计(满分80分) 程序设计(满分100分) 1.标题:国王的遗产 X国是个小国。国王K有6个儿子。在临终前,K国王立下遗嘱:国王的一批牛作为遗产要分给他的6个儿子。 其中,大儿子分1/4,二儿子1/5,三儿子1/6...

一叶之修的博客 1590

2014年第五届蓝桥杯国赛试题及详解(Java本科A组)

蓝桥杯历年真题题目及题解目录汇总 结果填空 (满分15分) 结果填空 (满分45分) 代码填空 (满分30分) 程序设计(满分30分) 程序设计(满分80分) 程序设计(满分100分) 1.标题:海盗分金币 有5个海盗,相约进行一次帆船比赛。 比赛中天气发生突变,他们被冲散了。 恰巧,他们都先后经过途中的一个无名的荒岛,并且每个人都信心满满,...

一叶之修的博客 771

征战蓝桥 —— 题解目录

2015年第六届 C语言A组 1.方程整数解 2.星系炸弹 3.奇妙的数字 4.格子中输出 5.九数组分数 6.牌型种数 7.手链样式 8.饮料换购 9. 10.

Alex 1325

蓝桥杯国赛 C/C++ ABC组题解(第四届 ~ 第十二届)

2018年第九届蓝桥杯国赛 题号 类型 C++ A组 C++ B组 C++ C组 试题A 结果填空 三角形面积 换零钞 年龄问题 试题B 结果填空 阅兵方阵 激光样式 最大乘积 试题C 代码填空 找假币 格雷码 全排列 试题D 编程题 约瑟夫环 调手表 约瑟夫环 试题E 编程题 自描述序列 搭积木 交换次数 试题F 编程题 采油 矩阵求和 迷宫与陷阱 ...

六级不考550+不改名 6031

第五届蓝桥杯JavaA组国(决)赛真题

解题代码部分来自网友,如果有不对的地方,欢迎各位大佬评论 题目1、海盗分金币 有5个海盗,相约进行一次帆船比赛。 比赛中...

5414

所有博客导航

。。

nameofcsdn的博客 1万+
上一篇: 剪格子—题解
下一篇: 康拓展开—理解
慕一春
博客等级 码龄12年 19粉丝 75原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值