求解填数字游戏问题(DFS回溯)
【问题描述】
在3*3方阵中填入1到10内某9个整数,每方格填一个,使所有相邻两个方格两个整数之和为质数,输出满足要求的情况总数
【思路】
构建一个二维数组,常规回溯搜法来搜就可以了,值得注意的就是,对角相邻不符合本题中相邻的定义!这种题很有蓝桥杯的填空题风格
代码:
#include<iostream>
using namespace std;int maze[4][4]; //小方阵
int ans = 0;
int tag[11];bool IsPrime(int x) //判断素数最简单的算法
{for(int i = 2;i * i <= x;i++){if(x % i == 0)return false;}return true;
}bool panduan(int x, int y, int t)
{if(tag[t] == 1)return false;if(x - 1 >= 1){if(!IsPrime(maze[x - 1][y] + t))return false;}if(y - 1 >= 1){if(!IsPrime(maze[x][y - 1] + t))return false;}return true;
}void dfs(int x, int y)
{if(x == 4) //说明已经来到边界 {ans++;/*cout << "********" << endl;可以输出查看结果 for(int i = 1;i <= 3;i++){for(int j = 1;j <= 3;j++){cout << maze[i][j] << " ";}cout << endl;}*/return ;}for(int i = 1;i <= 10;i++){if(panduan(x, y, i)){tag[i] = 1;maze[x][y] = i;if(y != 3)dfs(x, y + 1);elsedfs(x + 1, 1);maze[x][y] = 0;tag[i] = 0;}}
}int main()
{dfs(1, 1);cout << ans << endl;return 0;
}
运行结果:
求解填数字游戏问题(DFS回溯)相关推荐
- 求解填字游戏问题(回溯)
在3*3个方格的方阵中填入数字1-10的某9个数字,每个方格填一个整数,使所有相邻两个方格内的两个整数之和为素数.编写一个程序,求出所有满足这个要求的数字的填法. #include<iostre ...
- 使用A* (AStar)算法自动求解拼数字游戏
原文链接: 使用A* (AStar)算法自动求解拼数字游戏 上一篇: js Heap 的简单使用 下一篇: vue router 技巧 效果 主要思想 设置两个数组 close 保存已经走过的状态 o ...
- c语言填数字游戏求解过程解读,c语言编程--数字游戏.doc
c语言编程--数字游戏 计算机实习报告 面向过程编程 用C语言求解实际问题 一.问题描述 游戏类第15个任务--猜数字游戏 计算机从0-9这10个数字中任意选择n个不重复数字(n≤10)组成一个5位数 ...
- P1274 魔术数字游戏(DFS)
文章目录 题目描述 输入格式 输出格式 样例输入 #1 样例输出 #1 提示 数据规模 Code 洛古原题 ~ 搜索+剪枝 ~ 题目描述 填数字方格的游戏有很多种变化,如下图所示的 4 × 4 4 \ ...
- 求解填字游戏 C++
文章目录 问题描述 算法思路 问题描述 在3*3个方格的方阵中填入数字1-10的某9个数字,每个方格填一个整数,使所有相邻两个方格内的两个整数之和为素数.编写一个程序,求出所有满足这个要求的数字的填法 ...
- 【C语言编程练习】5.7填数字游戏求解
之前的东西就不上传了,大致就跟现在的一样 1. 题目要求 计算 ABCD * E DCBA 这个算式中每个字母代表什么数字? 2. 题目分析 如果是我们人去做这道题会怎么办,一定是这样想把,一个四位 ...
- 蓝桥杯刷题021——填字母游戏(DFS)
2017国赛 题目描述 小明经常玩 LOL 游戏上瘾,一次他想挑战 K 大师,不料 K 大师说: "我们先来玩个空格填字母的游戏,要是你不能赢我,就再别玩 LOL 了". K 大 ...
- 蓝桥杯 填数字游戏 20分。
小明经常玩 LOL 游戏上瘾,一次他想挑战K大师,不料K大师说: "我们先来玩个空格填字母的游戏,要是你不能赢我,就再别玩LOL了". K大师在纸上画了一行n个格子,要小明和他交替 ...
- 填数字游戏ABCD*E=DCBA
目录 1.问题描述 2.问题分析 3.代码 4.总结 1.问题描述 有这样一个算式: ABCD×EDCBA\frac {ABCD \atop ×E} {DCBA} DCBA×EABCD 其中ABC ...
最新文章
- 【转】在OpenGL场景中实现小地图功能
- python官方推荐的三本书-一个合格的python程序员,应该从这三本书入手
- 整型(int)转时间格式字符串及页面long型转时间格式字符串
- [Leetcode] Remove duplicates from sorted array ii 从已排序的数组中删除重复元素
- Ionic+Angular+Express实现前后端交互使用HttpClient发送get请求数据并加载显示(附代码下载)
- TechEmpower Web 框架性能第19轮测试结果正式发布,ASP.NET Core在主流框架中拔得头筹...
- DreamWeaver使用技巧学习心得
- mysql查询无主键的表的方法:
- 用 dash_bootstrap_components 为 dash 生成美观的导航栏
- 探访新疆北部主力气田:推陈出新 “新科技”保供气
- QString转Char*字符串
- 教你使用Donemax DMmenu可以解决Mac启动缓慢的问题呢?
- JUC和线程池的详细讲解
- 浅析几种常见RAID模式。DVI接口种类!以及18针24针的区别!
- Linux虚拟网络设备之bridge(桥)
- 韦东山ARM裸机学习笔记——S3C2440的串口驱动编程原理
- 磅 英寸 厘米 dpi 像素
- 移动端电商首页制作-京东
- truelicense使用手册
- 【A Unified Model for Multi-class Anomaly Detection, NeurIPS 2022】
热门文章
- 微信小程序引爆朋友圈的秘密
- 获得焦点和失去焦点事件的应用
- 智云通CRM:如何每次拜访都让客户乐于接见?
- 【xmind使用】黄金猪头样例
- error : not in formal parameter list和invalid storage class
- 【AIOps下的探索与实践】神州灵云和Rancher共同举办Container Open Talk 沙龙活动
- 唯有自身强大才能呼风唤雨—Intel要携CXL一统互联江湖了吗?
- 17张思维导图,一网打尽机器学习统计基础(附下载)
- Web安全:X-XSS-Protection头(防XSS攻击设置)
- ubuntu降低你使用的内核到指定版本