রবিবার, ২৫ ডিসেম্বর, ২০১৬

UVA 12043 - Divisors

#include<bits/stdc++.h>
using namespace std;
#define SIZE 100010
long long i,j,div1[SIZE];
long long  ddd[SIZE];
void check()
{
    for(i=1;i<=100000;i++)
    {
        for(j=i;j<=100000;j+=i)
        {
            div1[j]+=i;
            ddd[j]++;
        }
    }
}
main()
{
  check();
    long ts;
    cin>>ts;
    while(ts--)
    {
        long long a,b,c,ans=0,ans1=0,i1;
        cin>>a>>b>>c;
        for(i1=a;i1<=b;i1++)
        {
            if(i1%c==0)
            {
                ans1+=ddd[i1];
                ans+=div1[i1];
            }
        }
        cout<<ans1<<" "<<ans<<endl;
    }
}

কোন মন্তব্য নেই:

একটি মন্তব্য পোস্ট করুন

Factorization with prime Sieve

vector <int> prime; char sieve[1000009]; int N=1000009; void primeSieve ( ) { sieve[0] = sieve[1] = 1; prime.push_back(2); ...