玄关
  • 板块灌水区
  • 楼主Max_LS
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/9/21 20:08
  • 上次更新2024/9/21 20:43:53
查看原帖
玄关
1227116
Max_LS楼主2024/9/21 20:08
mt19937 seed(){
	mt19937 stochastic(time(NULL));
	return stochastic;
}
long long random(long long a,long long b){
	uniform_int_distribution<long long>result(a,b);
	return result(seed);
}

我想写一个造数据的随机数,但编译器报

D:/RedPanda C++/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_algo.h	66	0	In file included from D:/RedPanda C++/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_algo.h
D:/RedPanda C++/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/uniform_int_dist.h	0	-1	In instantiation of 'std::uniform_int_distribution<_IntType>::result_type std::uniform_int_distribution<_IntType>::operator()(_UniformRandomNumberGenerator&, const std::uniform_int_distribution<_IntType>::param_type&) [with _UniformRandomNumberGenerator = std::mersenne_twister_engine<unsigned int, 32, 624, 397, 31, 2567483615, 11, 4294967295, 7, 2636928640, 15, 4022730752, 18, 1812433253>(); _IntType = long long int; std::uniform_int_distribution<_IntType>::result_type = long long int]':
D:/RedPanda C++/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/uniform_int_dist.h	166	51	required from 'std::uniform_int_distribution<_IntType>::result_type std::uniform_int_distribution<_IntType>::operator()(_UniformRandomNumberGenerator&) [with _UniformRandomNumberGenerator = std::mersenne_twister_engine<unsigned int, 32, 624, 397, 31, 2567483615, 11, 4294967295, 7, 2636928640, 15, 4022730752, 18, 1812433253>(); _IntType = long long int; std::uniform_int_distribution<_IntType>::result_type = long long int]'
D:/C++/造测试点/test.cpp	11	20	required from here
D:/RedPanda C++/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/uniform_int_dist.h	223	4	[错误] 'std::mersenne_twister_engine<unsigned int, 32, 624, 397, 31, 2567483615, 11, 4294967295, 7, 2636928640, 15, 4022730752, 18, 1812433253>()' is not a class, struct, or union type
D:/RedPanda C++/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/uniform_int_dist.h	226	4	[错误] 'std::mersenne_twister_engine<unsigned int, 32, 624, 397, 31, 2567483615, 11, 4294967295, 7, 2636928640, 15, 4022730752, 18, 1812433253>()' is not a class, struct, or union type

程序也没断点。

源代码

#include<bits/stdc++.h>
using namespace std;
bool num[1000000]={};
int stu[1000000]={};
mt19937 seed(){
	mt19937 stochastic(time(NULL));
	return stochastic;
}
long long random(long long a,long long b){
	uniform_int_distribution<long long>result(a,b);
	return result(seed);
}
int main(){
	for(int i=1;i<=10;i++){
		int n=random(1,100),l=0;
		cout<<n<<endl;
		for(int j=0;j<n;j++){
			int k=random(1,100);
			if(!num[k]){
				cout<<k<<' ';
				num[k]=1;
				stu[l]=k;
				l++;
				j--;
			}
		}
		sort(stu,stu+l);
		cout<<endl<<endl<<endl<<endl;
		for(int j=0;j<l;j++){
			cout<<stu[j]<<' ';
	}
	}
	return 0;
}
2024/9/21 20:08
加载中...