北航计算机机试13简单版八皇后
来源:互联网 发布:c语言结构体 编辑:程序博客网 时间:2024/05/01 22:42
如题,确实是简化了不少,连思路都说出来了….
按这个思路来的话
#include<stdio.h>#include<string.h>int main(){ int a[8][8]; char m; int i,j,k; int l,r; int flag=0; for(i=0;i<8;i++) { for(j=0;j<8;j++) { a[i][j]=0; } } for(i=0;i<8;i++) { m=getchar(); if(m!='*') { int n=m-48; for(j=0;j<8;j++) a[i][j]=1;//row for(j=i+1;j<8;j++) a[j][n-1]=1;//col for(j=i,k=n-1;j>0 &&k>0;j--,k--){} l=j; r=k; for(l,r;l<=7 && r<=7; l++,r++) a[l][r]=1;//rightdown up for(j=i,k=n-1;j>0 &&k<7;j--,k++){} l=j; r=k; for(l,r;l<8 && r>=0; l++,r--) a[l][r]=1;//leftdown up } } for(i=0;i<8;i++) { for(j=0;j<8;j++) { if(a[i][j]==0) { printf("%d\n",j+1); flag=1; } } } if(flag==0) { printf("NO ANSWER\n"); } return 0; }
每次都栽在越界上,代码不规范,导致总是越界出现错误,在行列对角线赋值时,想当然以为只赋值下面的就好..
简单版的,都被我写麻烦了
正常的八皇后,是用回溯剪枝来写
后天写!!!!!!!!!!!!!
0 0
- 北航计算机机试13简单版八皇后
- 北航计算机机试13真分数约分
- 北航计算机机试17
- 北航计算机机试13科学计数法
- 北航计算机机试16逆序数
- 北航计算机机试14阶乘数
- 北航计算机机试14五子棋
- 北航计算机机试14排版
- 北航计算机机试11替换矩阵
- 北航计算机机试08旋转矩阵
- 北航计算机机试11字符串扩展
- 北航计算机机试11孪生数
- 北航计算机机试08素数
- 北航计算机机试15相亲数
- 北航计算机机试07字符串统计
- 北航计算机机试06成绩排序
- 北航计算机机试09数组排序
- 北航计算机机试08字符串匹配
- 哈夫曼文件压缩源文件+头文件
- BZOJ 1486 [HNOI2009] 最小圈
- Linux下Git的初步使用指南
- JavaScript学习笔记第二天
- JAVA 泛型
- 北航计算机机试13简单版八皇后
- IFE 斌斌学院(js)
- 排序算法
- URL重写技术
- C++Primer第五版 第十六章习题答案(61~67)
- 算法训练 瓷砖铺放 递归
- 05 MapReduce应用案例01
- python的静态方法以及@staticmethod或@classmethod的区别
- Java方法重写与super关键字