bool list_probability(int color, int gui_num, int num, int key, bool chi, ProbabilityItemTable ptbl) { bool find = false; int anum = ptbl.array_num; for (int i = 0; i <= gui_num; ++i) { int yu = (num + i) % 3; if (yu == 1) { continue; } bool eye = (yu == 2); if (find || TableMgr.getInstance().check(key, i, eye, chi)) { ProbabilityItem item = ptbl.m[anum, ptbl.m_num[anum]]; ptbl.m_num[anum]++; item.eye = eye; item.gui_num = i; find = true; } } if (ptbl.m_num[anum] <= 0) { return(false); } ptbl.array_num++; return(true); }
static void Main(string[] args) { System.Console.WriteLine("generate feng table begin..."); init_cache(); gen_table(); gen_eye_table(); TableMgr.getInstance().dump_feng_table(); }
static void Main() { System.Console.Write("test hulib begin...\n"); TableMgr.getInstance().load(); test_one(); System.Console.ReadKey(); }
static void add(int[] cards, int gui_num, bool eye) { int count = 0; int key = 0; for (int i = 0; i < 9; ++i) { count += cards[i]; key = key * 10 + cards[i]; } TableMgr.getInstance().add(key, gui_num, eye, true); }
static void gen_auto_table() { int[] cards = new int[34]; for (int i = 0; i < 34; ++i) { cards[i] = 0; } for (int i = 0; i < 18; ++i) { cards[i] = 2; System.Console.WriteLine("将 %d", i + 1); gen_auto_table_sub(cards, 1); cards[i] = 0; } TableMgr.getInstance().dump_table(); }
static bool check_add(int[] cards, int gui_num, bool eye) { int key = 0; for (int i = 0; i < 7; i++) { key = key * 10 + cards[i]; } if (key == 0) { return(false); } Dictionary <int, bool> m; if (!eye) { m = gui_tested[gui_num]; } else { m = gui_eye_tested[gui_num]; } if (m.ContainsKey(key)) { return(false); } m.Add(key, true); for (int i = 0; i < 7; i++) { if (cards[i] > 4) { return(true); } } TableMgr.getInstance().add(key, gui_num, eye, false); return(true); }