Pagini recente » Cod sursa (job #358416) | Cod sursa (job #1574338) | Cod sursa (job #1129892) | Cod sursa (job #683288) | Cod sursa (job #1149130)
#include <stdio.h>
#include <iostream>
#include <vector>
using namespace std;
vector <int> v;
vector <int> a[256];
int N, A, B, C;
void cit()
{
scanf("%d %d %d %d", &N, &A, &B, &C);
v.push_back(B);
for (int i=2; i<=N; i++)
v.push_back((A * v.back() + B) % C);
}
void sol()
{
for (int i=0; i<4; i++)
{
for (int j=0; j<N; j++)
a[255 & (v[j] >> i * 8)].push_back(v[j]);
v.clear();
for (int j=0; j<256; j++)
{
for(int k = 0; k < a[j].size(); k++)
v.push_back(a[j][k]);
a[j].clear();
}
}
}
void afis()
{
for (int i=0; i< v.size(); i+=10)
printf("%d ", v[i]);
}
int main()
{
freopen("radixsort.in", "r", stdin);
freopen("radixsort.out", "w", stdout);
cit();
sol();
afis();
return 0;
}