简单的八皇后问题---NOJ1593
2016-04-20 01:16
148 查看
题目链接:http://acm.njupt.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=1593
由于只需判断输入的情况,不涉及递归回溯,那么就只需要使用八皇后的判断条件。
如果涉及回溯,请参考之前的博客:
/article/9801807.html
具体代码如下:
仅代表个人观点,欢迎探讨交流,勿喷!
PhotoBy:WLOP
http://weibo.com/wlop
由于只需判断输入的情况,不涉及递归回溯,那么就只需要使用八皇后的判断条件。
if(a[i] == a[j] || abs(a[j]-a[i])==abs(j-i))
如果涉及回溯,请参考之前的博客:
/article/9801807.html
具体代码如下:
#include <cstdio> #include <iostream> #include <cstring> #include <cmath> using namespace std; int t, a[8], kase = 0; char s[8][9]; int main(int argc, char const *argv[]) { scanf("%d", &t); while(t--) { int ok =1; for(int i = 0; i < 8; i++) scanf("%s", s[i]); for(int i = 0; i < 8; i++) { for(int j = 0; j < 8; j++) if(s[i][j] == 'Q') a[i] = j; } if(!ok) printf("Case %d: Yes\n", ++kase); else { for(int i = 0; i < 8; i++) for(int j = 0; j < i; j++) if(a[i] == a[j] || abs(a[j]-a[i])==abs(j-i)) { ok = 0; break; } if(ok) printf("Case %d: No\n", ++kase); else printf("Case %d: Yes\n", ++kase); } } return 0; }
仅代表个人观点,欢迎探讨交流,勿喷!
PhotoBy:WLOP
http://weibo.com/wlop
相关文章推荐
- 【浅谈web网站验证码生成方案之中文验证码 】
- Spring.Net的AOP的通知
- 民生银行信用卡心得---网络整理
- 关于学习以及知识
- LeetCode 306. Additive Number(加法的数字)
- (21)Spring Boot过滤器、监听器【从零开始学Spring Boot】
- Android界面的架构图
- 大二了,有些小迷茫,但是前进的路不能停
- Java界面设计的用途
- POJ2251---Dungeon Master---BFS最短路之三维迷宫
- Android解析json数据
- SnackBar的基本使用
- 其他控件触发ddlb的selectionchanged事件及模糊查询
- 【PHP】 foreach循环中变量引用的一道面试题
- 忘记Oracle数据库管理员密码的解决办法
- HDOJ(HDU) 1587 Flowers(水、、)
- HDOJ(HDU) 1587 Flowers(水、、)
- Access System(sort 排序~小贪心问题)
- swustoj956约瑟夫问题的实现
- OSChina 周三乱弹 ——你是有多寂寞啊,看光头强都……