2011年9月12日
摘要: 题目描述:都玩过这个游戏,同行同列不能出现相同的数字,同一个9格子中也不能相同的出现。解决:dfs+回溯把每行每列不能用的元素检出来,在搜索的时候看每9个格子的情况,用check函数, 用两个vis数组存放行的信息和列的信息#include <iostream>#include <cstdio>using namespace std;int map[10][10];bool vis1[10][10],vis2[10][10];bool found;bool check(int x,int y,int val){//检测每9个格子中的数是否重复 for(int i=(x- 阅读全文
posted @ 2011-09-12 22:14 猿类的进化史 阅读(349) 评论(0) 推荐(0) 编辑
摘要: poj 1077/hdoj 1043题目大意:你懂得解决:A*,在poj上数据很弱,后来他们说zoj和hdoj都有这道题,就在过一下,这次数据是多组的,没想到都超时了,原因是有无解的情况,关键是如何判断无解的情况,他们说提前都能判断出来,判了两次没盘出来,后来才知道是这样整的:由于一个空格和其他的数字交换位置,若是与同一行交换,逆序数的个数不变(这可是不包含9,就把那个当成空格处理),若是与同一列交换,要么是增加2,要么是减少2,可见奇偶性不变,根据这个可以判断出是否有解,若没有解在a*,因为一定会有解顺便推荐一篇好文章http://hi.baidu.com/benbearlove/blog/ 阅读全文
posted @ 2011-09-12 21:47 猿类的进化史 阅读(307) 评论(0) 推荐(0) 编辑