Pagini recente » Cod sursa (job #305059) | Cod sursa (job #2771008) | Cod sursa (job #689350) | Cod sursa (job #2238275) | Cod sursa (job #35728)
Cod sursa(job #35728)
// Problema Zero 2
#include <stdio.h>
int main()
{
freopen( "zero2.out", "wt", stdout );
long int N, B, fac, k, i, j, nr;
long int a[1000];
int nrd;
freopen( "zero2.in" ,"rt", stdin );
for ( i=1; i<=10; i++ )
{
scanf( "%ld %ld", &N, &B );
nrd = 0;
for( j=2; j*j<=B; j++ )
if( ( B%j == 0 ) && ( B/j < N ) && ( j < N ) )
{
a[++nrd] = j;
a[++nrd] = B/j;
}
a[nrd+1] = 0;
nr = 0;
for( k=1; k<=N; k++ )
{
fac = k;
while( fac%B == 0 )
{
nr += N-k+1;
fac = fac/B;
}
if( k > 1 )
for( j=1; j<=nrd; j++ )
if( k == a[j] )
{
nr++;
if( a[j+1] == a[j] ) nr++;
break;
}
}
printf( "%ld\n", nr );
}
fclose( stdin );
fclose( stdout );
return 0;
}