1/*2題意:就是給定兩個篩子,每個篩子上6個面,每個面的數字屬於[1,6], 且互不相同!
3問a篩子最少經過按照題目規定的要求轉動,達到和b篩子上下左右前後的數字相同!45
思路:很直白的bfs,將每一種狀態對應乙個數字,保證這種狀態不會重新加入佇列中! 6*/
7 #include8 #include9 #include10 #include11 #include12
using
namespace
std;
1314
int a[7
], ss;
15int vis[654330
];16
17struct
node
20 node(int a1, int a2, int a3, int a4, int a5, int
a6)28
intstep;
29};
3031 queueq;
3233
34int
sum(node x)
4041
bool
bfs()
53q.pop();
54 node *nt = new node(cur.k[5], cur.k[6], cur.k[3], cur.k[4], cur.k[2], cur.k[1
]);55
int v = sum(*nt);
56if(!vis[v])
6162 nt = new node(cur.k[6], cur.k[5], cur.k[3], cur.k[4], cur.k[1], cur.k[2
]);63 v = sum(*nt);
64if(!vis[v])
6970 nt = new node(cur.k[3], cur.k[4], cur.k[2], cur.k[1], cur.k[5], cur.k[6
]);71 v = sum(*nt);
72if(!vis[v])
7778 nt = new node(cur.k[4], cur.k[3], cur.k[1], cur.k[2], cur.k[5], cur.k[6
]);79 v = sum(*nt);
80if(!vis[v])85}
86return
false;87
}8889int
main()
97 memset(vis, 0, sizeof
(vis));
98if(!bfs())
99 printf("
-1\n
");
100}
101return0;
102 }
2014東莞市選 分組
file io input group.in output group.out time limits 1000 ms memory limits 262144 kb detailed limits special judge description 有n個字串,給這些字串分組,使得每個字串屬於且僅...
汕頭市選 2014 舞伴
n 個男孩,n 個女孩,男孩和女孩可能是朋友,也可能不是朋友。現在要組成n 對舞伴,要求每對 伴都是一男一女,且他們是朋友。統計不同配對方案的數量,因為結果很大,所以只要求除以m 的餘數。對於50 的資料,n 9 對於100 的資料,1 n 20,1 m 10 9 0 aij 1。這題觀察資料不難發...
汕頭市選2014 舞伴 perm
n 個男孩,n 個女孩,男孩和女孩可能是朋友,也可能不是朋友。現在要組成n 對舞伴,要求每對舞 伴都是一男一女,且他們是朋友。統計不同配對方案的數量,因為結果很大,所以只要求除以m 的餘數。第1 行,2 個整數n,m。接下來n 行,每行n 個整數aij,表示第i 個男孩和第j 個女孩的關係。如果他們...