八皇后问题,是一个古老而著名的问题,是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。 高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后来有人用图论的方法解出92种结果。
求解过程:
采用遍历的办法,就是...
分类:
其他好文 时间:
2014-08-13 18:49:47
阅读次数:
218
练练最小费用最大流此外此题也是一经典图论题题意:找出两条从s到t的不同的路径,距离最短。 要注意:这里是无向边,要变成两条有向边#include #include #define MAXN 1005#define MAXM 10005#define INF 0x3f3f3f3fstruct Edg....
分类:
其他好文 时间:
2014-08-13 18:21:06
阅读次数:
202
来源: http://poj.org/problem?id=1270
Following Orders
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 3812
Accepted: 1512
Description
Order is an...
图论的题目。着色原理+二分图匹配。 1 #include 2 #include 3 4 #define MAXN 205 5 6 char map[MAXN][MAXN]; 7 int link[MAXN]; 8 int color[MAXN]; 9 bool visit[MAXN];10 ...
分类:
其他好文 时间:
2014-08-12 00:02:53
阅读次数:
205
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define maxn 1000
#define INF 100000000
int edge[...
分类:
其他好文 时间:
2014-08-11 17:57:32
阅读次数:
197
题意:
给出一个迷宫,‘#’是墙壁,‘ ’(空格)可走,‘S’是起点,‘A’是目标,一个群体从S点开始,每次可以走周围相邻的4个格子,走到某个目标的花费是从上一个目标(或起点)开始计算的步数,群体可且仅可在S或A出分成若干个(可以看成是无数个,即使在同一个格子中)群体。比如从S开始走5步到A1,在A1分成两个群体,其中一个到达A2走3步,另一个到达A3也走3步,那么总花费是5+3+3=11。求到达所有A的最小花费。
分析:
题意很难理解,其实就是个最小生成树,用BFS在平面内模拟prim算法即可,这里要用到...
分类:
其他好文 时间:
2014-08-11 17:55:02
阅读次数:
268
题意:每个人的基础工资是888, 由于一部分人要显示自己水平比较高,要求发的工资要比其他人中的一个人多,问你能不能满足他们的要求,如果能的话最终一共要发多少钱,如果不能就输出-1.
策略:拓扑排序。
这道题有些难点:一:数据大,建二维数组肯定不行,要换其他的数据结构(vector, 或者是链式前向星(本题代码用的是链式前向星)); 二:要逆拓扑排序(就是将++in[b]换成++in[a]),...
分类:
其他好文 时间:
2014-08-10 18:39:00
阅读次数:
250
题意:
给出若干张图片(矩形边框)叠在一起的效果图,保证边框为一个字符宽度,边长不短于3个字符,每条边都能看见一部分,每张图有且仅有一种字母且不重复,求出其从底到顶的叠放顺序,如果有多个解,按字典序输出每个解。题目保证有解
分析:
首先要从凌乱的效果图中把每张图的信息抠出来,因为每条边保证可见,所以只要扫描四条边就行,得到了四条边的位置,就能确定某张图的位置。
图叠在一起只能看见每个位置顶部的图,也就是该位置有可能出现的图都在顶部那张图的下面,比如在(1,1)有A,B,C,D四张图,我们只能看见A,那么A在...
分类:
其他好文 时间:
2014-08-10 15:50:50
阅读次数:
874