c语言数组文曲星猜数游戏编程,文曲星“猜数字”游戏的计算机模拟 —— 算法分析与实现...

本文探讨了如何通过修改CleverPlayer算法来优化文曲星游戏中数字猜测的策略。作者提出了对种类数最多的排列进行搜索,与原始的等概率假设不同,这种方法旨在找到最有效的解法。讨论了算法的实现细节和性能优化关键点。
摘要由CSDN通过智能技术生成

# re: 文曲星“猜数字”游戏的计算机模拟 —— 算法分析与实现

2009-08-14 15:18

左言

@东坡_居士

回复东坡_居士:你的算法“如果这个“提问”得到的“答案”种类越多,每个答案下面的可能数字就越少”,实际上可以通过对Clever1Palyer的进行修改实现:

34 int all_max = 0;

35 int all_max_index;

36 for (int i=0; i

37 // 对于每一个可行排列 Ri

38 if (_cand[i]) { // 这一行也可以去掉

41 // cur_max 记录该当前行可行排列的关系的种数

42 int cur_max = 0;

43 for (int j=0; j<=MATCH; j++)

44 res_count[j] = 0;

45 for (int j=0; j

46 if (_cand[j])

47 res_count[ (int)table[i][j] ]++;

48 }

49 for (int j=0; j<=MATCH; j++) // 求种类数

50 if (res_count[j] > 0)

51 cur_max ++;

52 // 如果 cur_max 小于全局 all_max,则更新 all_max,并记录下当前排列的序号

53 // 这样能找到种类数最多的情况

54 if (cur_max > all_max) {

55 all_max = cur_max;

56 all_max_index = i;

57 }

58 }

59 }

所以我的假设是最坏假设,你的假设是等概率假设。呵呵,你把裁判想得比较善良。

回复  更多评论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值