c语言五子棋人机对战的代码

Python012

c语言五子棋人机对战的代码,第1张

首先设2维数组模拟棋盘,棋盘每个位置设权值,代表当前适合下的一个价值

然后根据下面的表,给值,每下一步判断一次

棋型名称 棋型模式 估值

活四 ?AAAA? 300000

死四A AAAA? 2500

死四B AAA?A 3000

死四C AA?AA 2600

活三 ??AAA?? 3000

死三A AAA?? 500

死三B ?A?AA? 800

死三C A??AA 600

死三D A?A?A 550

活二 ???AA??? 650

死二A AA??? 150

死二B ??A?A?? 250

死二C ?A??A? 200

代码挺长的,没什么看的意义,自己琢磨一下这个就写了

不懂得继续问

objectMainextendsApp{

varreverse_pairs = 0//逆序

defmsort[T](cmp:(T, T) =>Boolean)(l:List[T]):List[T] = {

defmerge(l1:List[T], l2:List[T]):List[T]=(l1, l2)match{

case(Nil, _) =>l2

case(_, Nil) =>l1

case(x::left1, y::left2) =>

if(cmp(x, y))

x::merge(left1, l2)

else{

reverse_pairs += l1.length

y::merge(l1, left2)

}

}

valn = l.length / 2

if(n == 0)

return l

else{

val(l1, l2) = l.splitAt(n)

merge(msort(cmp)(l1), msort(cmp)(l2))

}

}

println(msort((x:Int, y:Int) =>x<y)(List(5, 4, 3, 2, 7,6 )))

println(reverse_pairs)

}