问题标题: 酷町堂:2685 条件(cond)

0
0
已解决
李智宸
李智宸
高级守护
高级守护

题目链接: 酷町堂:2685

#include<iostream>
using namespace std;
int main(){
    long long sum=0,n;
    cin>>n;
    for(int i=1;i<=n;i++){
        if(n%i==0){
            sum+=i;
        }
    }
    cout<<sum;
    return 0;
} 

超时代码!!!


0
已采纳
吕梓瑜
吕梓瑜
初级天翼
初级天翼

循环末尾改掉,改成sqrt(n)

再在8-9行加上这个:

if(i*i!=n){
    c+=n/i;
}

对于30%的数据N<=1000
对于60%的数据N<=100,000
对于100%的数据N<=1,000,000,000

这是数据范围,不用根号肯定会超时

0
0
贾一凡
贾一凡
中级光能
中级光能

循环从1至sqrt(n)

然后在8,9行之间加上一个if判断

AC!

我要回答