把1-8填入图中的网格中,使得每条线所连接的2个数字不相邻
来源:互联网 发布:域名价值评估 编辑:程序博客网 时间:2024/05/02 03:09
把1-8填入图中的网格中,使得每条线所连接的2个数字不相邻
代码如下:
#include <iostream>using namespace std;int isadjoin(int x, int a, int b, int c, int d, int e, int f){if((x != a && x != a-1 && x != a+1) && (x != b && x != b-1 && x != b+1) && (x != c && x != c-1 && x != c+1)&& (x != d && x != d-1 && x != d+1) && (x != e && x != e-1 && x != e+1) && (x != f && x != f-1 && x != f+1))return 0;elsereturn -1;}int isequal(int x, int a, int b, int c, int d){if((x != a) && (x != b) && (x != c)&& (x != d))return 0;elsereturn -1;}int main(){int a,b,c,d,e,f,g,x;for(x = 1; x <= 8; x++){for(a = 1; a <= 8; a++){if(isadjoin(a, x, x, x, x, x, x) == 0 && isequal(a, x, x, x, x) == 0)for(b = 1; b <= 8; b++){if(isadjoin(b, a, a, a, a, a, a) == 0 && isequal(b, x, x, x, x) == 0)for(c = 1; c <= 8; c++){if(isadjoin(c, x, a, b, b, b, b) == 0 && isequal(c, a, a, a, a) == 0)for(d = 1; d <= 8; d++){if(isadjoin(d, a, b, c, c, c, c) == 0 && isequal(d, x, x, x, x) == 0)for(e = 1; e <= 8; e++){if(isadjoin(e, b, d, d, d, d, d) == 0 && isequal(e, x, a, c, c) == 0)for(f = 1; f <= 8; f++){if(isadjoin(f, x, c, d, d, d, d) == 0 && isequal(f, a, b, e, e) == 0)for(g = 1; g <= 8; g++){if(isadjoin(g, c, d, e, f, f, f) == 0 && isequal(g, x, a, b, b) == 0)cout<<a<<" "<<b<<" \n"<<x<<" "<<c<<" "<<d<<" "<<e<<" \n"<<f<<" "<<g<<"\n\n\n\n"<<endl;}}}}}}}}return 0;}
答案:
5 3
2 8 1 7
6 4
6 4
2 8 1 7
5 3
3 5
7 1 8 2
4 6
4 6
7 1 8 2
3 5
1 0
- 把1-8填入图中的网格中,使得每条线所连接的2个数字不相邻
- 巧排数字,将1,2,...,19,20这20个数字排成一排,使得相邻的两个数字之和为一个素数
- 在N*N的棋盘上(1<=N<=10)请填入1,2,...N2共N2个数,使得任意两个相邻的数之和为素数。
- 网格中移动字母 2x3=6个方格中放入ABCDE五个字母,右下角的那个格空着。如图【1.jpg】所示。 和空格子相邻的格子中的字母可以移动到空格中,比如,图中的C和E就可以移动,移动后
- 巧排数字,将1,2,...,19,20这20个数字排成一排,使得相邻的两个数字之和为一个素数,且首尾两数字之和也为一个素数。编程打印出所有的排法。
- uva10905连接n个数字,使得连成的数字最大
- 从1到20个数字排成一圈,每两个相邻数字之和为一个素数
- 随笔:把1,2,3…n*n 的数字按照顺时针螺旋的形式填入数字矩阵
- 给一个奇数阶N幻方,填入数字1,2,3…N*N,使得横竖斜方向上的和都相同
- 面试题:实现在一个长度为255的数组,为数组中每一项填入1-255之间的数并且保证不重复
- 1-9,九个数填入3*3的格子中,使每行每列总和相同
- python 把文件中每列的第一个值作为字典中的key键值索引
- 以该数字为矩阵的大小,把1,2,3…n*n 的数字按照顺时针螺旋的形式填入其中
- 在格子上随机填入不重复的数字
- 1 2 3 4 5 6 7 8 9 = 110,在数字间填入加号或者减号(可以不填,但不能填入其它符号)使等式成立。
- 面试题:实现在一个长度为255的数组,为数组中每一项填入0-255之间的数并且保证不重复
- Codeforces Round #375 (Div. 2) E. One-Way Reform(有n个点,m条无向边,给每条边定向,使得入度等于出度的点最多)
- 第一个数字 把串s中第一个出现的数字的值返回。 如果找不到数字,返回-1
- OpenGL的SDL2接入程序
- C语言OJ项目参考(2963) 判断三角形
- 【版本升级】Xafari Framework发布v16.1.7|附下载
- QT开发环境安装
- 国外一款非常流行的登录
- 把1-8填入图中的网格中,使得每条线所连接的2个数字不相邻
- Jackson相关学习资料
- 在Ubuntu14.04上安装和配置ROS Indigo
- 每日一个js实例11--上下左右键
- const_cast
- LeetCode 32 Longest Valid Parentheses
- 微信小程序如何删除项目工程
- C语言OJ项目参考(2966) 循环画三角形
- 大数据专题