Cod sursa(job #223237)
| Utilizator | Data | 27 noiembrie 2008 19:54:07 | |
|---|---|---|---|
| Problema | Fractii | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.56 kb |
#include <fstream.h>
#include <math.h>
int main()
{
ifstream fin("fractii.in");
ofstream fout("fractii.out");
int ok[1000], i, j, n, s, ap = 0, log;
fin >> n;
memset (ok,1,sizeof(ok));
for ( i = 1; (i * log i) <= n; i++ )
for ( s = 1; (s*log s) <= n; s++ )
if ( ok[i/s] )
{
j = 2;
while ( (i*j)/(s*j) <= n )
{
ok[(i*j)/(s*j)] = 0;
j++;
}
}
for ( i = 1; i <= n; i++ )
for ( s = 1; s <= n ; s++ )
if ( ok[i/s] )
ap++;
fout << ap;
fin.close();
fout.close();
return 0;
}