2014年普级组模拟试题一 五香豆腐
来源:互联网 发布:voip软件电话 编辑:程序博客网 时间:2024/06/10 03:56
Description
经过谢老师n次的教导,dfc终于觉悟了——过于腐败是不对的。但是dfc自身却无法改变自己,于是他找到了你,请求你的帮助。
dfc的内心可以看成是5*5个分区组成,每个分区都可以决定的的去向,0表示继续爱好腐败,1表示改正这个不良的习惯。只有当25个分区都为1时,dfc才会改正腐败这个不良习惯。你有一根神奇的魔法棒,可以使点中的分区以及这个分区上下左右改变(1变0,0变1)。这根神奇的魔法棒只能使用6次了,请问你最少使用多少次才可以救醒这dfc。(使用超过6次则输出-1,表示dfc已经无药可救了)。(因为dfc实在太顽固不化,所以你要救醒他n次,但每次都有会获得由谢老师送的一根新的魔法棒,不过之前那根会消失)。
Input
第一行有一个正整数n,代表数据中共有n组数据。
以下若干行数据分为n组,每组数据有5行,每行5个字符。每组数据描述了25个分区的初始状态。各组数据间用一个空行分隔。
Output
输出数据一共有n行,每行有一个小于等于6的整数,它表示对于输入数据中对应的每组数据最少需要几步才能将救醒dfc。
对于一个数据,如果无法在规定的条件救醒dfc,请输出“-1”。
Sample Input
3
00111
01011
10001
11010
11100
11101
11101
11110
11111
11111
01111
11111
11111
11111
11111
Sample Output
3
2
-1
Hint
30%,n <= 5;
100%,n <= 500。
解题思路:
用广搜进行枚举,如果头指针大于6则枚举完,读入方阵后用十进制储存,输出对应答案即可。
var hash:array[0..34000000] of shortint; f,a:array[1..500000] of longint; n,m,l,i,j,k:longint; s:string;function change(x,y:longint):longint; begin x:=x xor (1 shl y); if (y mod 5<>0) then x:=x xor (1 shl (y-1)); if ((y+1) mod 5<>0) then x:=x xor (1 shl (y+1)); if (y>4) then x:=x xor (1 shl (y-5)); if (y<20) then x:=x xor (1 shl (y+5)); exit(x);end;procedure bfs; var head,tail,i:longint; t,t1:longint; begin head:=0; tail:=1; f[1]:=1 shl 25-1; hash[f[1]]:=0; a[1]:=0; repeat inc(head); if hash[f[head]]>=6 then break; for i:=0 to 24 do begin t:=change(f[head],i); if hash[t]=-1 then begin if hash[f[head]]+1<=6 then begin inc(tail); f[tail]:=t; a[tail]:=head; hash[t]:=hash[f[head]]+1; end; end; end; until head>=tail;end;begin for i:=0 to 34000000 do hash[i]:=-1; bfs; readln(m); for l:=1 to m do begin n:=0; for i:=1 to 5 do begin readln(s); for j:=1 to 5 do begin k:=ord(s[j])-ord('0'); n:=n*2+k; end; end; writeln(hash[n]); if l<m then readln; end;end.
- 2014年普级组模拟试题一 五香豆腐
- 五香豆腐_ssl2357_bfs+位运算
- mysql 模拟试题一
- NOI 模拟试题(一)
- 2004年网络工程师考试模拟试题一
- 2007年中考化学模拟试题一
- 三级数据库全真模拟试题(一)
- 自动化面试题专题(一)[模拟电路]
- 2015年普级组模拟试题 序列
- 国家公务员考试——模拟试题及答案(一)
- 2011年政治经济学模拟试题一(附答案)
- java 面试题(一) [模拟交通灯管理系统]
- 2015NOIP模拟赛(一) 试题及解析
- Luogu CON1041 NOIP模拟赛一试题解
- SSL P2463 2015年普级组模拟试题 序列
- 木耳豆腐
- 豆腐羹
- 家常豆腐
- Android sqlite3工具的使用
- SQL中N+1问题已经MyBaits中的解决方案
- 题目1098:字母统计
- 出现次数最多的数
- spark1.6.0+Hadoop2.6.0+Scala-2.11.7 搭建分布式集群
- 2014年普级组模拟试题一 五香豆腐
- 10017---Managing Solr Search Configuration
- Java FileInputStream没有读取文件会发生什么情况
- Block中的循环引用问题
- Educational Codeforces Round 11---B-Seating On Bus
- URI 与 URL、URN
- Java中数据类型的传递
- 使用ucenter整合网站和discuz的同步登陆
- 画图