首页 > 解决方案 > 根据每个任务的最佳提交动态计算用户积分

问题描述

我正在为竞争性编程制作一个竞赛管理系统。

将有大约 100 个任务,最坏的情况是每个用户将为每个任务发布大约 10 个提交。

每次提交都会给你一些分数,但只有在每项任务中得分最高的那个才算数。

现在我必须实现一个排名系统,但我不知道如何计算他们的分数并根据他们对每项任务的最佳提交的总和进行动态排序。

这是我的表:

任务:id 名称 max_points

用户:id 用户名 密码

提交:id任务用户积分

我唯一的想法是在 users 表中添加一个新的 total_points 字段,并制作另一个表以包含每个任务的最佳提交,如果他们想按特定任务而不是全局排序。

任何建议都会很棒。

标签: mysql

解决方案


推荐阅读