[CODEVS1116]四色问题
题目描述 Description
给定N(小于等于8)个点的地图,以及地图上各点的相邻关系,请输出用4种颜色将地图涂色的所有方案数(要求相邻两点不能涂成相同的颜色)
数据中0代表不相邻,1代表相邻
输入描述 Input Description
第一行一个整数n,代表地图上有n个点
接下来n行,每行n个整数,每个整数是0或者1。第i行第j列的值代表了第i个点和第j个点之间是相邻的还是不相邻,相邻就是1,不相邻就是0.
我们保证a[i][j] = a[j][i] (a[i,j] = a[j,i])
输出描述 Output Description
染色的方案数
样例输入 Sample Input
8
0 0 0 1 0 0 1 0
0 0 0 0 0 1 0 1
0 0 0 0 0 0 1 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0
1 0 1 0 0 0 0 0
0 1 0 0 0 0 0 0
样例输出 Sample
Output
15552
数据范围及提示 Data
Size & Hint
n<=8
var a:array[..,..]of longint;
color:array[..]of longint;
n,m,i1,j1:longint;
sum:longint=;
{function p(w:longint):boolean;
var i:longint=1;
begin
p:=true;
while((i<w)and(color[w]*a[i,w]<>color[i])) do i:=i+1;
if w>=n then exit(false);
end;}
procedure sise(x:longint);
var i,j:longint;
b:boolean;
begin
if x>n then
begin
inc(sum);
exit;
{必须要退出否则无法进入下一个循环}
end;
for i:= to do
begin
b:=true;
for j:= to do
if (a[j,x]=)and(color[j]=i) then b:=false;
if ((x<=n)and b) then
begin
color[x]:=i;
sise(x+);
end;
color[x]:=;
end;
end;
begin
fillchar(color,sizeof(color),);
read(n);
for i1:= to n do
for j1:= to n do
read(a[i1,j1]);
sise();
writeln(sum);
end.
[CODEVS1116]四色问题的更多相关文章
- 【wikioi】1116 四色问题
题目链接 算法:DFS 刚开始卡了一下,但后面想了想,于是 放上代码: #include <iostream> using namespace std; bool map[9][9]; i ...
- [wikioi]四色问题
http://wikioi.com/problem/1116/ 典型的DFS. #include <iostream> #include <memory.h> #define ...
- 一些对数学领域及数学研究的个人看法(转载自博士论坛wcboy)
转自:http://www.math.org.cn/forum.php?mod=viewthread&tid=14819&extra=&page=1 原作者: wcboy 现在 ...
- 备战NOIP每周写题记录(一)···不间断更新
※Recorded By ksq2013 //其实这段时间写的题远远大于这篇博文中的内容,只不过那些数以百记的基础题目实在没必要写在blog上; ※week one 2016.7.18 Monday ...
- 图的M着色问题
问题描述: 给定无向连通图 G 和 m 种不同的颜色.用这些颜色为图 G 和各顶点着色,每个顶点着一种颜色.是否有一种着色法使得图 G 中每条边的两个顶点着不同的颜色.这个问题是图的 m 可着色判定问 ...
- python数据结构与算法之问题求解实例
关于问题求解,书中有一个实际的案例. 上图是一个交叉路口的模型,现在问题是,怎么安排红绿灯才可以保证相应的行驶路线互不交错. 第一步,就是把问题弄清楚. 怎么能让每一条行驶路线不冲突呢? 其实,就是给 ...
- 什么是数学 (R·柯朗 H·罗宾 著)
第1章 自然数 引言 $1 整数的计算 1. 算术的规律 2. 整数的表示 3. 非十进位制中的计算 $2 数学的无限性 数学归纳法 1. 数学归纳法原理 2. 等差级数 3. 等比级数 4. 前n项 ...
- [NOIP 2014复习]第二章:搜索
一.深度优先搜索(DFS) 1.Wikioi 1066引水入城 题目描写叙述 Description 在一个遥远的国度,一側是风景秀美的湖泊,还有一側则是漫无边际的沙漠.该国的行政 区划十分特殊,刚好 ...
- 算法训练 Pollution Solution(计算几何)
问题描述 作为水污染管理部门的一名雇员,你需要监控那些被有意无意倒入河流.湖泊和海洋的污染物.你的其中一项工作就是估计污染物对不同的水生态系统(珊瑚礁.产卵地等等)造成的影响. 你计算所使用的模型已经 ...
随机推荐
- Android Studio API 文档_下载与使用
如何下载API 说明: 时间: 2016/7/9 根据百度经验步骤改编(百度经验), 但是比它更好, 亲测可用 1.1 下载API文档: 1.1.1 SDK Manager 1.1.2 1.1.3 ( ...
- 发光的input框(纯css实现)
css代码: input{width: 200px;height: 40px;} input.focus{border-color: #08c;box-shadow: 0 0 4px #8bd6fb; ...
- (转载)SQL中导入图片
SQL中导入图片 分类: 论坛精贴 2006-05-10 12:07 398人阅读 评论(0) 收藏 举报 sqlimage服务器insertlogingo 1.建立过程CREATE PROCEDUR ...
- oracle服务介绍
按照windows 7 64位 安装oracle 11g R2中的方法成功安装Oracle 11g后,共有7个服务,这七个服务的含义分别为: 1. Oracle ORCL VSS Writer Ser ...
- centos系统python升级2.7.3
首先下载源tar包 可利用linux自带下载工具wget下载,如下所示: wget http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz 下载 ...
- OSG Win7 + VS2015 编译
1. 准备 建立目标树 OpenSceneGraph-VERSION (VERSION替换为版本号) OpenSceneGraph-VERSION\3rdParty (把依赖库放在此目录) http: ...
- Substring的简单使用
string myString = "测试一下函数Substring()是怎么用的"; //Substring()在C#中有两个重载函数 //分别如下示例 //如果参数为一个长整数 ...
- linux下修改IP信息
在Linux的系统下如何才能修改IP信息 以前总是用ifconfig修改,重启后总是得重做.如果修改配置文件,就不用那么麻烦了- A.修改ip地址 即时生效: # ifconfig eth0 192. ...
- mysql数据库乱码
问题:mysql数据库的编码都设置为utf8的情况下,用jdbc往数据库中插入数据时仍然乱码, 解决方法:在jdbc的中加上参数characterEncoding=utf8&useUnicod ...
- scrollview始终显示滚动条 Android
设置scrollview的:android:fadeScrollbars="false"表示始终显示垂直滚动条