Cod sursa(job #2195465)

Utilizator llalexandruLungu Alexandru Ioan llalexandru Data 16 aprilie 2018 14:02:36
Problema Radix Sort Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.74 kb
#include <iostream>
#include <algorithm>
#include <cstdio>
#include <map>
#include <vector>

using namespace std;

vector <long long> V[300];
long long n, a, b, c;

void Add(int x)
{
    int b = x>>24;
    V[b].push_back(x);
}

long long trb=1;

int main()
{
    freopen("radixsort.in", "r", stdin);
    freopen("radixsort.out", "w", stdout);
    cin>>n>>a>>b>>c;
    int x=b;
    Add(x);
    for (int i=2; i<=n; i++)
    {
        x=(a*x+b)%c;
        Add(x);
    }
    for (int i=0; i<=255; i++)
    {
        sort(V[i].begin(), V[i].end());
        for (int j=0; j<V[i].size(); j++)
        {
            if (trb%10==1)
                cout<<V[i][j]<<" ";
            trb++;
        }
    }
    return 0;
}