问题标题: 酷町堂:2685 条件

0
0

0
已采纳
徐子玄
徐子玄
初级光能
初级光能

1

徐子玄在2020-07-17 11:33:19追加了内容

1

0
许雨航
许雨航
初级守护
初级守护

对不起,已解决

谁先发1就采纳

0
0
李瑞曦
李瑞曦
高级天翼
高级天翼

这一题要优化,不然会超时,核心:

for(int i=1;i<=sqrt(n);i++){
        if(n%i==0){
            c+=i;
            if(i*i!=n){
                c+=n/i;
            }
        }
    }

思路:如果i是n的因数,就加上,但因为需要优化,所以只遍历到n的平方根就行了。因为因数都是成对存在的,所以加的时候可以将对应的因数也加上,但也有特殊情况(例如3是9的因数9/3还是等于3,3和3重复了,不需要再加了),就需要一个特判

0
李鑫羽
李鑫羽
初级光能
初级光能

核心代码:

for(int i=1;i<=sqrt(n);i++){
        if(n%i==0){
            sum+=i+n/i;
        }
    }
    cout<<sum;

0
武宸锐
武宸锐
初级光能
初级光能
for(int i=1;i<=sqrt(n);i++){
        if(!(n%i)){
            sum+=i+n/i;
        }
    }
    cout<<sum;

爱学习!爱酷町!

拒抄袭!赞原创!

拒绝抄袭行为,拒绝MN行为

各位转起来,传遍全网

支持原创,拒绝抄袭

我要回答