NKABD - Số phong phú

Tác giả: skyvn97

Ngôn ngữ: C++

#include<stdio.h>
#define MAX 100005
typedef unsigned long long ull;
ull s[MAX+10];
ull i,l,r,n;
void init(void)
{
     ull i,j;
     for (i=1;i*2<=MAX;i=i+1)
         for (j=i*2;j<=MAX;j=j+i) s[j]=s[j]+i;
}
int main(void)
{
    init();
    scanf("%llu",&l);
    scanf("%llu",&r);
    n=0;
    for (i=l;i<=r;i=i+1)
        if (s[i]>i) n++;
    printf("%llu",n);
    return 0;
}

Download