首页 > 其他分享 >2023.9.22

2023.9.22

时间:2023-09-24 16:22:17浏览次数:34  
标签:22 long seed increment multiplier 2023.9 modulus public

纯随机数发生器

import java.util.ArrayList;
import java.util.List;

public class LinearCongruentialGenerator {
private long seed;
private long modulus;
private long multiplier;
private long increment;

public LinearCongruentialGenerator(long seed, long modulus, long multiplier, long increment) {
this.seed = seed;
this.modulus = modulus;
this.multiplier = multiplier;
this.increment = increment;
}

public long next() {
seed = (multiplier * seed + increment) % modulus;
return seed;
}

public static List<Long> generateRandomIntegers(int count) {
long modulus = Integer.MAX_VALUE;
long multiplier = 16807;
long increment = 0;
long seed = System.currentTimeMillis() % modulus; // 使用当前时间的毫秒数作为种子

LinearCongruentialGenerator generator = new LinearCongruentialGenerator(seed, modulus, multiplier, increment);

List<Long> randomIntegers = new ArrayList<>();
for (int i = 0; i < count; i++) {
randomIntegers.add(generator.next());
}

return randomIntegers;
}

public static void main(String[] args) {
int count = 1000;
List<Long> randomIntegers = generateRandomIntegers(count);

for (long randomInteger : randomIntegers) {
System.out.println(randomInteger);
}
}
}

 

程序定义了两个名为square的方法,一个接受整数参数,另一个接受双精度浮点数参数。这两个方法具有相同的名称,但它们的参数类型不同。重载的square方法接受不同类型的参数,因此它们可以返回不同类型的结果。一个方法返回整数,另一个返回双精度浮点数。

标签:22,long,seed,increment,multiplier,2023.9,modulus,public
From: https://www.cnblogs.com/ztydebeishanglaojia/p/17726127.html

相关文章

  • 2023.9.24 ABout Math
    CF645F我们可以计算这样的函数\(F(x)\)表示\(\gcd\)是\(x\)的倍数有多少个\(k\)元组。设\(x\)的倍数有\(cnt_x\)个数,那么\(F(x)=C_{cnt_x}^k\)。根据莫反,\(f(x)=\sum_{x|d}F(d)\mu(d/x)\)\(Ans=\sumxf(x)=\sum_{x=1}^nx\sum_{x|d}\mu(d/x)\timesC_{cnt_d}......
  • SWPUCTF 2022 新生赛
    Web奇妙的MD5打开得到一个md5加密窗口放入ffifdyop,这个字符串被md5哈希了之后会变成276f722736c95d99e921722cf9ed621c,这个字符串前几位刚好是'or'6而Mysql刚好又会把hex转成ascii解释,因此拼接之后的形式是1select*from'admin'wherepassword=''or'6xxxxx',等价......
  • Acwing. 第122场周赛
    比赛链接A简单输出题目链接简单的模拟一下就好了,注意是多组样例就行。#include<bits/stdc++.h>usingnamespacestd;voidsolve(){intn;cin>>n;for(inti=1;i<=n;i++){cout<<i<<"";}cout<<endl;}intmain(){......
  • 9.22
    今天,我沉浸在算法的海洋中,领悟了栈与队列的奥秘,领悟了形式与政策的深邃。我感到收获颇丰,但心中也有些许疑惑。在四则运算的程序学习中,我见识到了程序的逻辑与严谨,但我又不禁反思,这些程序背后,又藏着怎样的数学原理呢?今天的课程,让我既有所得,又有所惑。我在栈与队列的规则中徘徊,形式......
  • 2023.9.23——每日总结
    学习所花时间(包括上课):12h代码量(行):0行博客量(篇):1篇今天,上午做任务,下午完成任务。我了解到的知识点:1.一些电的知识,液压装置和机械结构,以及汇编语言的知识;2.由于昨天太劳累,忘记发博客,今日补上。明日计划:1.继续学习HTML;......
  • 9.22日记
    hive中数据库为shuju、、、、、、createtabledaiinasselectday_idasday_id,buy_nbrasbuy_nbr,sum(cnt)ascnt,sum(round)asroundfromtest3wherebuy_nbrlike'O%'groupbyday_id,buy_nbr;createtabledailiasselectdaiin.day_idasday_id,daiout.s......
  • 2022新领军一试部分题目及解答
    2022新领军一试部分题目及解答小学渣​爱数学的初三菜鸡一枚前言:本文章仅用于记录作者本人思考的解答,看个乐子就好(初二牲)1.(1)求 I_n=\displaystyle\int_{-1}^{1}x^n\sqrt{1-x^2}\mathrm{d}x\;\;\;\;\;\;\; (2)求 \displaystyle\sum_{n=1}^{+\i......
  • Ubuntu22.04 系统添加中文输入法
    为Ubuntu22.04系统添加中文输入法引用:https://blog.csdn.net/weixin_44916154/article/details/1245823791、首先,安装 Chinese 语言包2、单击桌面右上角图标,点击 Settings,在弹出的窗口中,点击 Region&Language,然后点击 ManageInstalledLanguages3、或者通过这......
  • 2023.9.23(我的第一次博客)
     现在是晚上九点三十一,我正坐在图书馆以此总结我一天的学习 早上七点半我来到这个位置完成老师所布置的作业,说实话我并不讨厌英语,我讨厌的是高中英语老师,讨厌的是是她那种死板的教学方法,大家也都挺讨厌的。我自认为目前对于英语的学习效率不高,两篇文章读了两三遍加上做题竟然......
  • 9月22日深夜(UTC+8),Telegram CEO兼创始人Durov发文宣布Telegram的最新更新
    更新主要有如下内容:1.用户可以通过给予"Boost"来授予他们喜爱的频道发布故事的能力。*每个Telegram大会员的订户都拥有一个“Boost”,可以被用户分配给任意一个频道,为频道“升级”。*每升一个级别,频道每天就可以额外发布一个故事。*频道可以通过特殊链接向用户乞求“Boost”......