

Hãy luôn nhớ cảm ơn và vote 5*
nếu câu trả lời hữu ích nhé!
#include<bits/stdc++.h>
#include<math.h>
using namespace std;
int dq(int n)
{
if (n == 1)
{
return 1;
}
return (n * dq(n - 1));
}
bool nto(int n)
{
if (n < 2)
{
return false;
}
for (int i = 2; i <= sqrt(n); i++)
{
if (n % i == 0)
{
return false;
}
}
return true;
}
int main()
{
int n,m,c = 0;
cin >> n >> m;
int s = dq(n) / (dq(m) * dq(n - m));
for (int i = 1; i <= s; i++)
{
if (s % i == 0)
{
if (nto(i) == true)
{
c++;
}
}
}
cout << c;
return 0;
}
Hãy giúp mọi người biết câu trả lời này thế nào?

Hóa ra nãy giờ đọc nhầm đề
// n!/(m!(nm)!)
#include <bits/stdc++.h>
#define l long long
using namespace std;
l gt(l n) {
if (n==1) return 1;
return n*(gt(n-1));
}
bool nt(l n) {
for (int i=2; i<=sqrt(n); i++) if (n%i==0) return false;
return (n>=2);
}
l countgcd(l n) {
l count=0;
for (l i=2; i<=n; i++) if (n%i==0 && nt(i)) count++;
return count;
}
int main() {
l n,m;
cin >> n >> m;
cout << countgcd(gt(n)/(gt(m)*(gt(n-m))));
}
Hãy giúp mọi người biết câu trả lời này thế nào?

hình như chủ tus vt sai đề hay sao á :vv
nó bị runtime
#include<bits/stdc++.h> using namespace std; const int N = 100000; int c[N] = {0}; int c1[N] = {0}; int n, m; void demnt(int n, int a[]) { int k = 2; while (n != 1) { if (n % k == 0) { a[k]++; n /= k; } else { k++; } } } int main() { /*n!/m!(n-m)! vì n>m nên sẽ rút gọn đc chẳng hạn ntn: (1234567)/(1231234)=(4567)/(1234) vẫn tiếp tục cái ví dụ trên (4567)/(1234)=(2^3537)/(2^33) dễ thấy nếu số mũ của số nguyên tố trên tử lớn hơn dưới mẫu thì đó là ước nguyên tố của S vậy đếm phân phối tử, mẫu nếu đếm phân phối trên tử lớn hơn thì kq+1 code: */ freopen("CPRDIV.INP", "r", stdin); freopen("CPRDIV.OUT", "w", stdout); ios::sync_with_stdio(0); cin.tie(0),cout.tie(0); cin >> n >> m; for (int i = m + 1; i <= n; i++) { demnt(i, c); } for (int i = 2; i <= n - m; i++) { demnt(i, c1); } int snt = 0; for (int i = 2; i <= N; i++) { if (c[i] > c1[i]) { snt++; } } cout << snt ; return 0; } Rút gọn#include<bits/stdc++.h> using namespace std; const int N = 100000; int c[N] = {0}; int c1[N] = {0}; int n, m; void demnt(int n, int a[]) { int k = 2; while (n != 1) { if (n % k == 0) { a[k]++; n /= k; } ... xem thêm
Bảng tin
78
565
32
nó bị runtime