中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

國內(nèi)好用的五款開源建站系統(tǒng)企業(yè)培訓體系搭建

國內(nèi)好用的五款開源建站系統(tǒng),企業(yè)培訓體系搭建,漳州網(wǎng)站建設(shè),西寧電商網(wǎng)站制作公司紅包算法 首先,如果紅包只有一個,本輪直接使用全部金額,確保紅包發(fā)完。 然后, 計算出本次紅包最少要領(lǐng)取多少,才能保證紅包領(lǐng)完,即本輪下水位; 本輪最多領(lǐng)取多少,才能保證每個人都…

紅包算法

首先,如果紅包只有一個,本輪直接使用全部金額,確保紅包發(fā)完。

然后,
計算出本次紅包最少要領(lǐng)取多少,才能保證紅包領(lǐng)完,即本輪下水位;
本輪最多領(lǐng)取多少,才能保證每個人都領(lǐng)到,即本輪上水位。

主要方式如下:
計算本次紅包金額下水位:假設(shè)本次領(lǐng)到最小值1分,那接下來每次都領(lǐng)到200元紅包能領(lǐng)完,那下水位為1分;如果不能領(lǐng)完,那按接下來每次都領(lǐng)200元,剩下的本輪應全部領(lǐng)走,是本輪的下水位。

計算本輪紅包上水位:假設(shè)本輪領(lǐng)200元,剩下的錢還足夠接下來每輪領(lǐng)1分錢,那本輪上水位為200元;如果已經(jīng)不夠領(lǐng),那按接下來其他領(lǐng)1分,計算本輪的上水位。

為了使紅包金額不要太懸殊,使用紅包均值調(diào)整上水位。如果上水位金額大于兩倍紅包均值,那么使用兩倍紅包均值作為上水位。換句話說,每一輪搶到的紅包金額,最高為兩倍剩下紅包的均值。

最后,獲取隨機數(shù)并用上水位取余,如果結(jié)果比下水位還小,則直接使用下水位,否則使用隨機金額為本輪拆到金額。

import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Random;public class RandomRedPocket implements RedPocket {BigDecimal avgAmount;private BigDecimal totalAmount;private BigDecimal lowestAmount;private Integer remainNum;public RandomRedPocket(BigDecimal totalAmount, int num) {this.totalAmount = totalAmount;this.remainNum = num;this.avgAmount = totalAmount.divide(new BigDecimal(num), 2, RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(2));this.lowestAmount = BigDecimal.valueOf(0.01);}@Overridepublic BigDecimal getAmount() {if (remainNum == 1) {return totalAmount;} else {BigDecimal lowerBound = calculateLowerBound();BigDecimal upperBound = calculateUpperBound();if (upperBound.compareTo(avgAmount) > 0) {upperBound = avgAmount;}remainNum = remainNum - 1;BigDecimal randomAmount = genRandomMoney(lowerBound, upperBound);totalAmount = totalAmount.subtract(randomAmount);return randomAmount;}}private BigDecimal calculateUpperBound() {//后面每人獲取最低紅包,需要剩下多少錢BigDecimal multiplied = lowestAmount.multiply(BigDecimal.valueOf(remainNum - 1));BigDecimal upperBound = totalAmount.subtract(multiplied);return upperBound;}//計算本次紅包,最低領(lǐng)取多少金額,才能保證紅包領(lǐng)完//此處可進一步完善private BigDecimal calculateLowerBound() {return BigDecimal.valueOf(0.01);}@Overridepublic boolean isValid(BigDecimal totalAmount, BigDecimal thisAmount) {return false;}@Overridepublic BigDecimal genRandomMoney(BigDecimal lowerBound, BigDecimal upperBound) {Random random = new Random();double randomItem = random.nextDouble();BigDecimal decimal = upperBound.subtract(lowerBound).multiply(new BigDecimal(randomItem)).add(lowerBound);decimal = decimal.setScale(2, RoundingMode.HALF_UP);return decimal;}
}
http://www.risenshineclean.com/news/11097.html

相關(guān)文章:

  • 同一個服務(wù)器的網(wǎng)站做有鏈事件營銷
  • 重慶網(wǎng)站建設(shè)設(shè)計俄羅斯搜索引擎瀏覽器官網(wǎng)入口
  • 視頻網(wǎng)站做cpa搜索關(guān)鍵詞的工具
  • php網(wǎng)站用到的知識山東最新消息今天
  • 如何在工商局網(wǎng)站上做網(wǎng)登湖南專業(yè)關(guān)鍵詞優(yōu)化服務(wù)水平
  • 網(wǎng)站如何制作學校的做手機如何建網(wǎng)站
  • 杭州公司展廳設(shè)計公司網(wǎng)站seo優(yōu)化分析
  • 網(wǎng)站充值接口免費推廣軟件
  • 網(wǎng)站建設(shè)需要域名服務(wù)器網(wǎng)絡(luò)營銷手段有哪些方式
  • 網(wǎng)站手機app開發(fā)seo引擎搜索入口
  • 如何做盆栽蔬菜網(wǎng)站網(wǎng)站首頁快速收錄
  • 哪些網(wǎng)站適合花錢做推廣朝陽區(qū)seo技術(shù)
  • 巫山那家做網(wǎng)站厲害長沙哪里有網(wǎng)站推廣優(yōu)化
  • 互助盤網(wǎng)站開發(fā)杭州龍席網(wǎng)絡(luò)seo
  • wordpress 合法評論網(wǎng)站seo整站優(yōu)化
  • 網(wǎng)站建設(shè)平臺網(wǎng)站設(shè)計seo刷關(guān)鍵詞排名優(yōu)化
  • 慈溪高端網(wǎng)站設(shè)計百度貼吧怎么做推廣
  • 產(chǎn)品網(wǎng)站系統(tǒng)溫州最好的seo
  • 怎樣做網(wǎng)站的二維碼海豹直播nba
  • 完整的網(wǎng)站后臺權(quán)限編碼百度手機app
  • 怎么建手機網(wǎng)站鎮(zhèn)江關(guān)鍵字優(yōu)化公司
  • 用什么給網(wǎng)站做測試競價惡意點擊犯法嗎
  • 搬瓦工512m內(nèi)存wordpress北京自動seo
  • 沙田鎮(zhèn)做網(wǎng)站湖北seo診斷
  • 工信部 網(wǎng)站要獨立ip2023b站推廣大全
  • 速成網(wǎng)站-百度怎么推廣自己的視頻
  • 給公司申請網(wǎng)站用自己的賬號淮安百度推廣公司
  • .jsp網(wǎng)站開發(fā)技術(shù)疫情排行榜最新消息
  • 網(wǎng)站欄目變了怎么做跳轉(zhuǎn)競價托管推廣公司
  • 網(wǎng)站推廣及seo方案網(wǎng)站怎么進入