Cod sursa(job #2509301)

Utilizator Chirac_MateiChiriac Matei Chirac_Matei Data 14 decembrie 2019 09:35:03
Problema Radix Sort Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <fstream>
#include <vector>

using namespace std;
ifstream fin ("radix.in");
ofstream fout ("radix.out");
int n,i,x,p;
bool ok;
vector <int> v, a[11];
int main()
{
    fin >>n;
    for(i=1;i<=n;i++)
    {
        fin>>x;
        v.push_back(x);
    }
    p=1;
    ok=true;
    while(ok)
    {
        ok=false;
        for(int it : v)
        {
            if(it/p>0)
                ok=true;
            a[(it/p)%10].push_back(it);
        }
        v.clear();
        for(i=0;i<=9;i++)
        {
            for(int it : a[i])
                v.push_back(it);
            a[i].clear();
        }
        p*=10;
    }
    for(int it : v)
        fout<<it<<' ';
    return 0;
}