Cod sursa(job #35728)

Utilizator Bluedrop_demonPandia Gheorghe Bluedrop_demon Data 22 martie 2007 13:35:15
Problema Zero 2 Scor 7
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
// 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;
}