This documentation is automatically generated by online-judge-tools/verification-helper
#include "lib/others/random.hpp"
乱数の生成の仕方が分からなくなるので作りました。
RandomNumber(l, r)
: 閉区間 $[l, r]$ (整数)の乱数テーブルを構築します。get()
: 乱数を $1$ つ取得します。#pragma once
/**
* @brief Random (乱数生成)
* @docs docs/others/random.md
*/
struct RandomNumber{
int64_t seed = chrono::duration_cast<chrono::milliseconds>(chrono::system_clock::now().time_since_epoch()).count();
uniform_int_distribution<long long> p;
mt19937_64 rnd;
RandomNumber(long long l = 0, long long r = 0){
rnd = mt19937_64(seed);
p = uniform_int_distribution<long long>(l, r);
}
long long get(){
return p(rnd);
}
};
#line 2 "lib/others/random.hpp"
/**
* @brief Random (乱数生成)
* @docs docs/others/random.md
*/
struct RandomNumber{
int64_t seed = chrono::duration_cast<chrono::milliseconds>(chrono::system_clock::now().time_since_epoch()).count();
uniform_int_distribution<long long> p;
mt19937_64 rnd;
RandomNumber(long long l = 0, long long r = 0){
rnd = mt19937_64(seed);
p = uniform_int_distribution<long long>(l, r);
}
long long get(){
return p(rnd);
}
};