По заданному натуральному числу N необходимо вычислить количество натуральных чисел, которые являются делителями N!(факториала числа N).
Например, при N=4, N!=4·3·2·1=24. Это число имеет такие делители: 1, 2, 3, 4, 6, 8, 12, 24. Таким образом искомое количество равняется8.
Входные данные
Входной файл содержит одно целое число N (1 ≤ N ≤ 45).
Выходные данные
Выходной файл должен содержать одно целое число - найденное количество делителей.
#include <iostream>
#include <stdlib.h>
#include <algorithm>
using namespace std;
int main()
{ int n,i=2,mas[100];
cin >> n; int l=2; int k=0;
for (int j=2;j<=n;j++)
{ i=j; while (l<=i)
{ if (i%l==0)
{ mas[k]=l; k++; i=i/l; }
else l++; } l=2; }
int count = 1; int mas1[100];
int z=0; sort(mas,mas+k); for (i=0;i<k;i++)
{ for (int j=i+1;j<k;j++)
if (mas[j] == mas [i]) count++;
mas1[z] = count;
i=i+count-1;
z++; count =1; }
int result=1;
for (i=0;i<z;i++) {
result =( mas1[i]+1)*result; }
cout <<result<<endl; return 0;
}
Есть решение которого нет на сайте? Пиши admin@devexe.top