设: 自然数M>1,N>1,且M>=N(M为行,N为列), 一维数组A[M*N]中元素为0或1(1为雷,0为非雷), 元素“1”的个数为S,且S<M*N(共S个雷)。 则: 1、对于数组A[M*N]中元素的一个特定排列H,求其3BV函数。 2、假设H为平均分布,求3BV的概率分布。
|
|
解释一下: 3BV是其他几个参数的函数,返回值为自然数。即 3BV(M,N,S,H)=?
举例说明: 初级 3BV(8,8,10,Hb) 中级 3BV(16,16,40,Hi) 高级 3BV(30,16,99,He)
同时,3BV(M,N,S,H)的函数结构 也是分析扫雷的概率分布的基础和条件。
|
|
我们再以一个初级雷局举例。
对应元素为 0000 0011 0000 0100 0000 0001 0000 1000 0110 0000 1010 0000 1000 0000 0000 0000 则序列为 H(0000001100000100000000010000100001100000101000001000000000000000)。
为方便表示,我们用16进制表示,即 H(0304010860A08000)
至此,此图3BV完整表达式为 3BV(8,8,10,H(0304010860A08000))
|
|
同发百度扫雷吧:http://tieba.baidu.com/f?kz=349166794
|
|
搞不定,等待贤人……
|
|
比较喜欢看关于这方面的文章~扫雷与数学的结合~ 一直对于3BV的算法感到疑惑...
|
|
我觉得这个问题不是简单到可以用一个表达式来解决的。 估计只能用程序来解决这种问题,这对张老大来说应该不在话下吧??
|
|
建议修正一下H的矩阵表达形式 可以考虑把没有数字的地方表示成-1,然后根据普通的3bv肉眼计数方法设计程序,只要对不与-1相邻的0进行计数,所得值就是3bv,这个地方应该不太难,不过给出具体的表达式,还得学数学或计算机的朋友们来研究
|
|
只用表达式会很难。 程序算法是有的。 刘康乐兄的想法很有借鉴意义。
|
|
|
|