NC53079 Forsaken喜欢数论(数论)

Forsaken喜欢数论

https://ac.nowcoder.com/acm/problem/53079

题目链接

题意:

题解:









AC代码

#include<bits/stdc++.h>
using namespace std;
const int N = 3e7 + 10; 
int prime[N];     
int miniFactor[N];
int primepos;
void init() {
    int tmp;
    for (int i = 2; i < N; i++) {
        if (!miniFactor[i]) prime[primepos++] = i, miniFactor[i] = i;
        for (int j = 0; (tmp = i * prime[j]) < N; j++) 
        {
            miniFactor[tmp] = prime[j];
            if (!(i % prime[j])) break;
        }
    }
}
int main() 
{
    init();
    int n;
    long long sum;
    cin>>n;
    for(int i=1;i<=n;i++)
    sum+=miniFactor[i];
    cout<<sum<<endl;
    return 0;
}
每日一题 文章被收录于专栏

每日一题

全部评论
大佬,时间复杂度O(n*sqrt(n))题解不超时么?
点赞 回复 分享
发布于 12-11 20:26 福建

相关推荐

评论
5
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务