Pagini recente » Cod sursa (job #1860122) | Cod sursa (job #70310) | Cod sursa (job #2362360) | Cod sursa (job #966842) | Cod sursa (job #3175754)
#include <fstream>
#define MAXN 10000001
using namespace std;
ifstream fin ("radixsort.in");
ofstream fout ("radixsort.out");
long long a, b, c, v[MAXN],aux;
int n,i,j;
void sort(long long v[], int st,int dr,long long btn) {
if (st>=dr || btn == -1)
return;
for (i=st,j=st; i<=dr; ++i)
if((v[i] & (1 << btn))==0) {
aux=v[j];
v[j]=v[i];
v[i]=aux;
j++;
}
sort(v,st,j-1,btn-1);
sort(v,j,dr,btn-1);
}
int main() {
fin>>n>>a>>b>>c;
v[1]=b;
for (i=2; i<=n; i++)
v[i] = ((a * v[i-1])%c + b) % c;
sort(v,0,n,30);
fout<<v[1]<<' ';
for (i=11; i<=n; i+=10)
fout<<v[i]<<' ';
return 0;
}