原题:
思路:将n的所有约数求出来,每找到积为n的三个约数,方案数加一
ac代码:
#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
int ans = 0;
ll n = 2021041820210418;
int main() {
vector<ll> res;
for(ll i =1; i<=n/i; i++) {
if(n % i ==0) {
res.push_back(i);
if(i != n/i)
res.push_back(n/i);
}
}
for(ll i:res)
for(ll j:res)
for(ll k:res) {
if(i *j*k==n)
ans++;
}
cout<<ans<<endl;
return 0;
}