Cod sursa(job #3148941)

Utilizator patcasrarespatcas rares danut patcasrares Data 5 septembrie 2023 14:00:00
Problema Pascal Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>
using namespace std;
ifstream fin("pascal.in");
ofstream fout("pascal.out");
int R,D, sol, main_two, main_five, two, five;

int get_pow(long long N, long long P) {
	int nr = 0;
	while(P <= N) {
		nr += N / P;
		P = P * P;
	}
	
	return nr;
}

int main() {
	// your code goes here
	fin >> R >> D;
	
	main_two = get_pow(R, 2);
	main_five = get_pow(R, 5);
	for (int j = 0; j<= R; j++) {
		two = main_two - get_pow(j, 2) - get_pow(R - j, 2);
		five = main_five - get_pow(j, 5) - get_pow(R - j, 5);
		if (two >= get_pow(D, 2) && five >= get_pow(D, 5))
			sol++;
	}
	fout << sol;
	return 0;
}