lanqiao 1463 货物摆放

This commit is contained in:
2025-04-03 08:23:22 +08:00
parent 641293f835
commit ff967793f2

32
12lanqiao/test4.cpp Normal file
View File

@@ -0,0 +1,32 @@
// lanqiao 1463 货物摆放
#include<bits/stdc++.h>
using namespace std;
#define int long long
/*
搜索解法由于n过大严重超时无法跑出结果
枚举解法:由于只有三个位置,所以直接枚举三个位置上的数字
*/
signed main(){
int n = 2021041820210418;
vector<int> p; // 找到n的所有因子并存储起来进而针对枚举范围进行优化
for(int i = 1; i <= sqrt(n); i++){
if(n % i == 0){
p.push_back(i);
if(i != n/i) p.push_back(n/i);
}
}
int ans = 0;
// 枚举因子,计算方案数量
for(int i = 0; i < p.size(); i++){
for(int j = 0; j < p.size(); j++){
for(int k = 0; k < p.size(); k++){
if(p[i] * p[j] * p[k] == n) ans++;
}
}
}
cout << ans << endl;
return 0;
}
/*
output -> 2430
*/