题目名称 205. 奥术能量环流
输入输出 arcane.in/out
难度等级 ★★
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 20
题目来源 GravatarBYVoid 于2008-11-10加入
开放分组 全部用户
提交状态
分类标签
图论
分享题解
通过:23, 提交:69, 通过率:33.33%
GravatarSatoshi 100 0.032 s 0.71 MiB C++
GravatarQhelDIV 100 0.037 s 0.44 MiB C++
Gravatarbelong.zmx 100 0.041 s 0.73 MiB C++
Gravatarbelong.zmx 100 0.042 s 0.89 MiB C++
GravatarTBK 100 0.049 s 0.57 MiB C++
GravatarLethur 100 0.049 s 0.62 MiB C++
Gravatarkaaala 100 0.051 s 1.89 MiB C++
Gravatarybh 100 0.056 s 0.35 MiB Pascal
GravatarZayin 100 0.063 s 5.01 MiB C++
Gravatar.Xmz 100 0.064 s 1.03 MiB C++
本题关联比赛
NOIP2008集训模拟2
关于 奥术能量环流 的近10条评论(全部评论)
擦他妹的。注意数据不保证不越边界。一般坑爹。
Gravatarbelong.zmx
2011-11-14 21:14 1楼

205. 奥术能量环流

★★   输入文件:arcane.in   输出文件:arcane.out   简单对比
时间限制:1 s   内存限制:128 MiB

【题目描述】

为了对抗巫妖王的天灾军团新一轮的入侵,暴风城正在被改建为一个港口城市。这个港口将会有通向诺森德的船只,以支援在诺森德战斗的联盟勇士。

在教堂广场和花园区之间的运河的尽头,有一堵坚固的城墙。然而 现在这里却被规划成为了通向港口的唯一途径,于是矮人们正在考虑如何将这堵墙拆掉。这堵墙是在六年前暴风城石工会建成的,它是当年为了抵抗兽人的入侵而建 立的,因而异常的坚固。然而现在石工会背叛了暴风城,他们组成了迪菲亚兄弟会,请他们来帮暴风城的贵族们是绝无可能的。

矮人们准备使用尽可能多的炸药炸掉它,但是大主教本尼斯塔九世强烈反对这一愚蠢的做法,因为这样会使大教堂如世界末日来临一般的震动。侏儒们认为把砖一块一块地卸下来是个不错的方法,但是砖与砖之间连接得异常紧密。于是,如何拆掉它便成了一个棘手的问题。

聪明的侏儒大工匠梅卡托克带领他的学徒工程师们彻底研究了这一堵墙,他们发现了这堵墙精妙的内部结构。墙内每块砖与其相邻的砖之间由奥术能量连接了起来,连接砖与砖之间的奥术能量是有极性的,发射方向总是从正极指向负极。

墙的内部存在着若干个奥术能量环流。所谓奥术能量环流,就是指在由多块砖组成的一个系统中,从每一块砖沿着奥术极性能量的发射方向出发,在该系统中进行若干次传递以后,都能够回到这块砖来。他们还发现,拆砖的时候,只有把所有的奥术能量环流都破坏掉,才能取下砖。

例如下面图样,这是大工匠梅卡托克带回实验室进行进一步研究的一个模型。

在这个模型中,有2*4=8块砖,相邻的砖之间已经用箭头标出了奥术极性能量的方向,由正极指向负极。经过分析不难发现,这个结构中存在着{1,2,5,6},{3,4}两个极大奥术能量环流(再也加不进去另外一块砖使其仍为奥术能量环流)。当然{1,5}也是一个奥术能量环流,但是它不是极大的,因为它是环流{1,2,5,6}的一个子环流。极大奥术能量环流就是一种环流,这种环流不是其他环流的子环流。

暴风城的贵族们采纳了梅卡托克的方案,尽管如此,实际执行工作的矮人们还是无法理解。他们请你来帮助编写一个程序,在动工前算出这堵墙中存在的极大奥术能量环流的个数。

【输入格式】

第1行,两个整数N,M(1<=N,M <=100),表示这堵墙由N行,M列块砖组合起来。

第2-N+1行,第i行有M个整数,第j个整数Pij表示这块砖的状态。Pij为一个小于16的非负整数,把它转化为四位二进制以后,每个二进制位表示这块砖是否向一个方向发出极性奥术能量。二进制数从左到右第1位为上,第2为下,第3位为左,第4位为右,1表示发射,0表示没有。

【输出格式】

第1行,一个整数,极大奥术能量环流的个数。

【样例输入】

2 4
5 5 1 2
8 2 3 0

【样例输出】

2

【样例说明】

样例如题中所给出的图所示。有{1,2,5,6},{3,4}两个极大奥术能量环流。