一个系统必须支持100个用户,支持的价格是3
系统必须支持10 000个用户,支持价格为1
我必须设计一个算法来给我两者之间的价格,所以它会随着用户数逐渐增加.
我试图将用户数乘以0.0002得到折扣价值,我得到了
300位用户*0.0002 = 0.06折扣,因此支持价格= 2.94总收入= 300*2.94 = 882
5000个用户*0.0002 = 1个折扣,因此支持价格= 2总收入= 5000*2 = 10 000
8000个用户*0.0002 = 1.6折扣,因此支持价格= 1.4总收入= 8000*1.4 = 11 200
10 000名用户*0.0002 = 2折扣,因此支持价格= 1总收入= 8000*1.4 = 10 000
所以你看到一个给定的点后,我实际上有更多的用户,但收到的付款较少.
我不是数学家,我现在这不是一个编程问题,但我不知道在哪里可以提出这个问题.如果有人可以帮我提供任何信息,我将不胜感激.谢谢!
price = n * (5 - log10(n))会为...工作100 < n < 10000.
只需确保使用base-10 log而不是自然(base-e)日志.如果您的语言没有正常的10-log日志,您可以这样计算:
function log10(x) { return log(x)/log(10); }.
对于100个用户,这是100 * (5 - log10(100))给出的100 * (5 - 2),即300.
对于1000级的用户,这是1000 * (5 - log10(1000)),这给1000 * (5 - 3),这是2000.
对于10000个用户,这是10000 * (5 - log10(10000))给出的10000 * (5 - 4),即10000.
让我们选择一些随机数字.
2500用户:2500 * (5 - log10(2500))给我们2500 * (5 - 3.39794),这是4005.
6500用户:6500 * (5 - log10(6500))给我们6500 * (5 - 3.81291),这是7716.
8000用户:8000 * (5 - log10(8000))给我们8000 * (5 - 3.90309),这是8775.
应该为你正在建模的东西做好准备.