Codewars风格的等级系统(Codewars style ranking system)
题目:
- 写一个名叫
User
的类,用于计算用户的得分和等级。(User
类中必须包含rank
和progress
这两个属性,以及incProgress()
这个方法) - 具体说明:
- 等级从-8到8依次递增
- 等级不包含0级,也就是说-1级的下一级是1
- 用户可以完成一些习题,这些习题也是有难度等级的
- 每次用户完成习题之后,就会根据习题难度(等级)重新计算用户的分数和等级
- 积分一旦达到100就会升一级,然后积分减100
- 一旦达到8级积分记为0,且不再有积分和等级的提高
- 输入其他的等级应该抛出一个错误。
- 计分准则:
- 完成同级题目获得3分
- 完成比自己等级低1级的题目,获1分
- 完成比自己等级低2级或更多的题目,不得分
- 完成等级比自己高的题目,获
10 * d * d
(d为等级差)
- 举个栗子:
- 等级-8的用户完成了等级为-7的题目,获得10分
- 等级-8