填数中的dfs
来源:互联网 发布:java调用exe程序 参数 编辑:程序博客网 时间:2024/06/05 15:47
方格填数
如下的10个格子
(如果显示有问题,也可以参看【图1.jpg】)
填入0~9的数字。要求:连续的两个数字不能相邻。
(左右、上下、对角都算相邻)
一共有多少种可能的填数方案?
如下的10个格子
(如果显示有问题,也可以参看【图1.jpg】)
填入0~9的数字。要求:连续的两个数字不能相邻。
(左右、上下、对角都算相邻)
一共有多少种可能的填数方案?
请填写表示方案数目的整数。
#include <stdio.h> #include <stdlib.h> #include <string.h> int a[11],vis[11]; int count; void DFS(int x) { if(x>10)//所有方格填数完毕 { if(abs(a[1]-a[2])>1 && abs(a[1]-a[4])>1 && abs(a[1]-a[5])>1 && abs(a[1]-a[6])>1 && abs(a[2]-a[3])>1 && abs(a[2]-a[5])>1 && abs(a[2]-a[6])>1 && abs(a[2]-a[7])>1 && abs(a[3]-a[6])>1 && abs(a[3]-a[7])>1 && abs(a[4]-a[5])>1 && abs(a[4]-a[8])>1 && abs(a[4]-a[9])>1 && abs(a[5]-a[6])>1 && abs(a[5]-a[8])>1 && abs(a[5]-a[9])>1 && abs(a[5]-a[10])>1 && abs(a[6]-a[7])>1 && abs(a[6]-a[9])>1 && abs(a[6]-a[10])>1 && abs(a[7]-a[10])>1 && abs(a[8]-a[9])>1 && abs(a[9]-a[10])>1) { //输出每种情况 count++; } } for(int i=0;i<=9;i++) //for循环赋值,0-9赋值 if(vis[i]==0) { vis[i]=1;//将用过的数标记 a[x]=i;//填数 DFS(x+1);//对下一个方格继续填数 vis[i]=0;//清除标记 } } int main() { count=0; DFS(1); printf("%d\n",count); return 0; }类比六角填数
标题:六角填数
如图【1.png】所示六角形中,填入1~12的数字。
使得每条直线上的数字之和都相同。
图中,已经替你填好了3个数字,请你计算星号位置所代表的数字是多少?
请通过浏览器提交答案,不要填写多余的内容。
#include <stdio.h> #include <string.h> int a[15],vis[15]; void DFS(int x) { if(x==1 || x==2 || x==12) { DFS(x+1); return ; } if(x>12) { int b[6]; b[0]=a[1]+a[3]+a[6]+a[8]; b[1]=a[1]+a[4]+a[7]+a[11]; b[2]=a[2]+a[3]+a[4]+a[5]; b[3]=a[2]+a[6]+a[9]+a[12]; b[4]=a[8]+a[9]+a[10]+a[11]; b[5]=a[5]+a[7]+a[10]+a[12]; for(int j=1;j<6;j++) if(b[j-1]!=b[j]) return ; printf("%d\n",a[6]); return ; } for(int i=2;i<=12;i++) //与上题思路差不多,赋值 if(vis[i]==0) { vis[i]=1; a[x]=i; DFS(x+1); vis[i]=0; } } int main() { memset(vis,0,sizeof(vis)); a[1]=1; vis[1]=1; a[2]=8; vis[8]=1; a[12]=3; vis[3]=1; DFS(1); return 0; }
0 0
- 填数中的dfs
- 六角填数(DFS)
- 水池填数(dfs)
- dfs 五星填数
- 蓝桥杯方格填数DFS
- 蓝桥杯题 五星填数(dfs)
- 蓝桥杯 方块填数 DFS搜索
- 蓝桥杯 2014预赛 六角填数 DFS
- poj 2676 Sudoku(dfs填数)
- 蓝桥杯 方格填数(DFS)
- 2015第六届蓝桥杯决赛--方格填数(DFS)
- 第七届C/C++B-方格填数 DFS
- 蓝桥杯第七届 方格填数(dfs)
- 2016蓝桥杯C/C++省赛 方格填数(深搜DFS)
- 方格填数【相邻两数互质】-DFS深度优先搜索
- 填数
- 填数
- 填数
- ALTER TABLE 语句
- Virtualbox 扩展虚拟磁盘空间大小
- 从一段字符串中快速找出某个字母或字符串出现的次数
- 数据结构的基本知识、算法
- C/C++头文件归档
- 填数中的dfs
- C++学习笔记
- slf4j教程
- 201521123108《Java程序设计》第3周学习总结
- Glide图片加载
- 计算机视觉之一:特征检测
- 1006
- Google 宣布 Android 将加入 Java 8 的原生支持
- 如何自己做Zabbix数据导出功能(下)