久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

JAVA實現紅包分發的示例代碼

瀏覽:6日期:2022-08-15 09:20:55
大體思路

如果發總金額為 m mm 的 n nn 個紅包,先用一個長度為 n nn 的臨時數組 a aa 存放 n nn 個隨機雙精度小數 ,然后用 s u m sumsum 表示數組 a aa 的和,每個紅包的金額

代碼

import java.util.Arrays;import java.util.Random;import java.math.*;import java.util.Scanner;public class Main { public static long now_time; public static long seed; public static int[] get_red_packets(int money, int num) { Random random = new Random(seed); seed = random.nextLong(); int[] res = new int[num]; double[] temp=new double[num]; double sum = 0; int sum2 = 0; for (int i = 0; i < num; i++) { temp[i] = random.nextDouble(); sum += temp[i]; } for (int i = 0; i < num; i++) { res[i] = 1+ (int)(temp[i] / sum * (money-num)); sum2 += res[i]-1; } res[random.nextInt(num)]+=money-sum2-num; return res; } public static void show(int[] red_packet){ System.out.println('紅包 : ' + Arrays.toString(red_packet)); } public static void main(String[] args) { int num, money; Scanner scanner = new Scanner(System.in); now_time = System.currentTimeMillis(); Random init_random = new Random(now_time); seed = init_random.nextLong(); System.out.println('請輸入要分發的紅包數量:'); num = scanner.nextInt(); System.out.println('請輸入要分發的紅包總金額(分):'); money = scanner.nextInt(); int a[] = get_red_packets(money,num); show(a); }}

到此這篇關于JAVA實現紅包分發的示例代碼的文章就介紹到這了,更多相關JAVA 紅包分發內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
主站蜘蛛池模板: 呼伦贝尔市| 张家口市| 洞头县| 马公市| 佳木斯市| 新津县| 叙永县| 凌源市| 涿鹿县| 双柏县| 昭觉县| 中方县| 江阴市| 哈密市| 卢氏县| 朝阳区| 万州区| 乌兰浩特市| 阳城县| 永兴县| 合阳县| 东至县| 永登县| 桦川县| 汶川县| 达孜县| 晋州市| 五常市| 象山县| 桦川县| 盐山县| 天全县| 广安市| 南木林县| 聂拉木县| 获嘉县| 绥化市| 永靖县| 浏阳市| 诏安县| 饶河县|