Cod sursa(job #388499)
| Utilizator | Data | 30 ianuarie 2010 12:36:18 | |
|---|---|---|---|
| Problema | Divizori Primi | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.38 kb |
#include<cstdio>
const int N=1<<20;
const int M=1<<3;
const int K=1<<19;
int p[N],nr[M],a[M][K];
void ciur()
{
for (int i=2;i<N;i++)
if (p[i]==0)
for (int j=i;j<N;j+=i)
p[j]++;
}
int main()
{
freopen("divprim.in","r",stdin);
freopen("divprim.out","w",stdout);
ciur();
for (int i=1;i<N;i++)
{
nr[p[i]]++;
a[p[i]][nr[p[i]]]=i;
}
return 0;
}
