Java货物摆放
创始人
2024-05-28 16:13:57

题目描述
小蓝有一个超大的仓库,可以摆放很多货物。

现在,小蓝有

n 箱货物要摆放在仓库,每箱货物都是规则的正方体。小蓝规定了长、宽、高三个互相垂直的方向,每箱货物的边都必须严格平行于长、宽、高。

小蓝希望所有的货物最终摆成一个大的长方体。即在长、宽、高的方向上分别堆

L、

W、

H 的货物,满足


×

×

n=L×W×H。

给定

n,请问有多少种堆放货物的方案满足要求。

例如,当

4
n=4 时,有以下
6
6 种方案:
1
×
1
×
4

1
×
2
×
2

1
×
4
×
1

2
×
1
×
2

2
×
2
×
1

4
×
1
×
1
1×1×4、1×2×2、1×4×1、2×1×2、2×2×1、4×1×1。

请问,当

2021041820210418
n=2021041820210418 (注意有
16
16 位数字)时,总共有多少种方案?

提示:建议使用计算机编程解决问题。

答案提交
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

运行限制
最大运行时间:1s
最大运行内存: 256M

public class Main {private static final int maxm = 1010;private static long[] a = new long[maxm];public static void main(String[] args) {long m = 2021041820210418L;int len = 0;for (long i = 1; i * i <= m; i++) {if (m % i == 0) {a[len++] = i;if (i != m / i) {a[len++] = m / i;}}}long cnt = 0;for (int i = 0; i < len; i++) {for (int j = 0; j < len; j++) {if (a[i] * a[j] > m) {continue;}for (int k = 0; k < len; k++) {if (a[i] * a[j] * a[k] == m) {cnt++;}}}}System.out.println(cnt);}
}

相关内容

热门资讯

法拉电子股价涨3.12%,工银... 6月18日,法拉电子涨3.12%,截至发稿,报175.36元/股,成交6.31亿元,换手率1.63%...
6月17日中证上海国企ETF(... 数据显示,6月17日,中证上海国企ETF(510810)获净申购108.17万元,位居当日股票ETF...
神火股份跌1.02%,成交额4... 6月18日,神火股份盘中下跌1.02%,截至10:17,报24.30元/股,成交4.15亿元,换手率...
汉宇集团涨1.08%,成交额2... 6月18日,汉宇集团盘中上涨1.08%,截至10:17,报10.25元/股,成交2910.82万元,...
6月17日广发中证全指信息技术... 数据显示,6月17日,广发中证全指信息技术ETF(159939)遭净赎回1499.46万元,位居当日...