Mai intai trebuie sa te autentifici.
Cod sursa(job #1104792)
| Utilizator | Data | 11 februarie 2014 00:16:00 | |
|---|---|---|---|
| Problema | Radix Sort | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <cstdio>
#include <algorithm>
#define N 10000010
using namespace std;
int n,a,b,c,i,x[N],*p,*q;
void back(int);
int main()
{
freopen("radixsort.in","r",stdin);
freopen("radixsort.out","w",stdout);
scanf("%d%d%d%d",&n,&a,&b,&c);
x[0]=b;b%=c;a%=c;
for(i=1;i<n;i++)
x[i]=(1LL*a*x[i-1]%c+b)%c;
p=x;q=x+n;
nth_element(p,p,q);
printf("%d ",*p);
for(i=10;i<n;i+=10)
{
nth_element(p,p+10,q);p+=10;
printf("%d ",*p);
}
return 0;
}
