琐事问答游戏的排序算法

时间:2018-06-11 10:20:18

标签: algorithm ranking

我正在建立一个Trivia测验游戏,我想根据他们的答案对人们进行排名。

问题是基本的琐事,人们可以回答A,B,C或D然后他们是对还是错。

我想根据他们的答案对他们进行排名,但在某些具体案例中存在问题:

玩家1回答了10个问题,得到了5个正确答案 玩家2已经回答了6个问题并且有5个正确答案

在这种情况下哪一个应该排名较高?

我应该使用总的正确答案或比率或正确的答案来排名人吗?是否有一种算法可以使用这两种数据来提供基于这两个指标的公平排名? 在技​​术方面,如何组织数据,以便能够在不扫描所有用户数据库的情况下判断玩家的等级?

如果您需要更多详细信息,请与我们联系。 谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您可以通过-1指向错误答案并通过+3指向正确答案来奖励该人。作为随机选择答案的人,预期点将为零1/4 * 3 + 3/4 * -1 = 0

在技术方面,如果每个人有两列包含错误和正确答案的数量,您可以计算每个人的分数,然后按如下顺序排序:

SELECT person_id, (wrong_num * (-1) + correct_num * 3) as rank
FROM scores
Order by rank