From 51b946bc0b5a6c98724d55865016cb753cdf9678 Mon Sep 17 00:00:00 2001 From: "DESKTOP-45ANQ2C\\unis" <121212121@qq.com> Date: Sat, 7 Dec 2024 17:18:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=81=E4=B8=89=E6=B0=B4=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E7=89=8C=E5=9E=8B=E6=AF=94=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gamerule/thirteen/logic_test.go | 66 +++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/gamerule/thirteen/logic_test.go b/gamerule/thirteen/logic_test.go index 729d406..da8a789 100644 --- a/gamerule/thirteen/logic_test.go +++ b/gamerule/thirteen/logic_test.go @@ -268,3 +268,69 @@ func TestLogic_CompareFive(t *testing.T) { func TestLogic_IsDP(t *testing.T) { } + +func TestStatisticsPokerType(t *testing.T) { + poker := NewPokers(1, false) + if poker == nil { + return + } + + logic := new(Logic) + + loop := 2000000 + allTypeData := make([]int, PokersTypeMax) + specialAllTypeData := make([]int, SpecialTypeMax) + + totalCnt := 0 + stotalCnt := 0 + + for i := 0; i < loop; i++ { + poker.Init() + cardsArr := make([][13]int, poker.N*4) + //cardsGroup := make([]map[int]*Group, poker.N*4) + + for k := range cardsArr { + + cardsArr[k] = poker.Get13Crads() + specialType := logic.GetSpecialType(cardsArr[k]) + specialAllTypeData[specialType]++ + stotalCnt++ + + //cardsGroup[k] = logic.Suggest(cardsArr[k]) + // + //cardsO := GetMaxCard(cardsGroup[k]) + // + //headType := logic.GetType(cardsO.Head[:]) + //midType := logic.GetType(cardsO.Mid[:]) + //endType := logic.GetType(cardsO.End[:]) + // + //allTypeData[headType]++ + //totalCnt++ + //allTypeData[midType]++ + //totalCnt++ + //allTypeData[endType]++ + //totalCnt++ + //t.Logf("头牌类型:%v 中牌类型: %v 尾牌类型: %v \n", PokersTypeName[headType], PokersTypeName[midType], PokersTypeName[endType]) + } + + } + + t.Logf("共%v次循环", loop) + //ccc := 0.0 + for pType, count := range allTypeData { + percent := (float64(count) / float64(totalCnt)) * 100 + // t.Logf("牌类型:%v 占百分比: %.2f \n", PokersTypeName[pType], percent) + t.Logf("%v %.2f\n", PokersTypeName[pType], percent) + //ccc += percent + } + + t.Logf("特殊牌型共%v次循环", loop) + //ccc := 0.0 + for pType, count := range specialAllTypeData { + percent := (float64(count) / float64(stotalCnt)) * 100 + // t.Logf("牌类型:%v 占百分比: %.2f \n", PokersTypeName[pType], percent) + t.Logf("%v %.10f\n", SpecialTypeName[pType], percent) + //ccc += percent + } + +}