...简单的ACM题,这个提交后怎么会“Time Limit Exceed”?!

发布网友 发布时间:2024-10-19 19:11

我来回答

3个回答

热心网友 时间:2024-10-24 06:59

可能是测试数据太变态了,出题者故意用来卡这种算法的
我们可以这么做 假设 m = p1^a1 * p2^a2 *..pk^ak..
那么它因子的个数就是(a1+1)(a2+1)...(ak+1).因为对于每个pi来说,我们可以选择有ai+1种选择(包括不选,选1个,选2个...选ai个)
那么也就是说我们只要对m进行质因素分解就可以了,先打一个素数表prime[],
然后对m进行分解,比如说20 = 2^2 * 5^1,我们计算出 因子2的个数2,和因子5的个数1
那么答案就是(2+1)*(1+1)= 6

热心网友 时间:2024-10-24 07:02

哥们。。。这是一个数论题目,可不是水题哦

热心网友 时间:2024-10-24 07:04

算法太朴素,超过时限了。
建议使用 筛选法 哟亲!
记得给好评哟~

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com