Codeforces Round #392 (Div. 2), problem: (F) Geometrical Progression Solution in C/C++

#include<stdio.h>
#include<stdlib.h>
#define N 10000001
#define SN 3163
typedef long long unsigned llu;
typedef unsigned u;
int F(const void*x,const void*y)
{
if(*(llu*)x>*(llu*)y)return 1;
if(*(llu*)y>*(llu*)x)return-1;
return 0;
}
u D[N],Ga[N],Gi[N];llu *G[N];
int main()
{
u a,b,c,i,j,k,n,x,y,lo,hi,mi;llu e;llu r=0;
for(i=0;++i<SN;)for(k=i*i,j=0;(j+=k)<N;)D[j]=i;
scanf(“%u%u%u”,&n,&x,&y);
if(n<3)
{
r=y-x+1;
if(n==0)r=1;
if(n==2)r=r*(r-1);
printf(“%I64u\n”,r);
return 0;
}
for(a=y+1;a–>x;)
{
for(i=0;++i;)
{
if((b=a/D[a]*(D[a]+i))>y)break;
if((c=b/D[a]*(D[a]+i))>y)break;
if(n==3){++r;continue;}
if((e=c*(llu)(D[a]+i))%D[a]>0||e/D[a]>y)continue;
j=c/(b/D[b]);
lo=0;hi=Gi[b];
while((mi=(lo+hi)>>1)>lo)
{
if((G[b][mi]>>32)>j)hi=mi;
else lo=mi;
}
if(!hi||(G[b][lo]>>32)!=j)k=4;
else k=1+(G[b][lo]&-1u);
if(Gi[a]==Ga[a])
{
if(!Ga[a])G[a]=(llu*)calloc(Ga[a]=1,sizeof(llu));
else G[a]=(llu*)realloc(G[a],(Ga[a]<<=1)*sizeof(llu));
}
G[a][Gi[a]++]=(((llu)(D[a]+i))<<32)|((llu)k);
if(k>=n)++r;
}
if(Gi[a])qsort(G[a],Gi[a],sizeof(llu),F);
}
printf(“%I64u\n”,r<<1);
return 0;
}

Why Pet Travel Gear...

📢 As an Amazon Associate, I earn from qualifying...

Mall Together-TENOKE

Simulation gaming enthusiasts have a fresh operational challenge to...

7 Reasons This Coffee...

📢 As an Amazon Associate, I earn from qualifying...

Why Kitchen Organization Tools...

📢 As an Amazon Associate, I earn from qualifying...

Is Dorm Room Hacks...

📢 As an Amazon Associate, I earn from qualifying...

Stop Buying Cheap Alternatives...

📢 As an Amazon Associate, I earn from qualifying...

Why Pet Travel Gear Is Currently Breaking the Internet

📢 As an Amazon Associate, I earn from qualifying purchases.After putting the Pet Travel Gear through a proper 30-day real-world test, I can tell...

Mall Together-TENOKE

Simulation gaming enthusiasts have a fresh operational challenge to tackle with the arrival of Mall Together-TENOKE. This brand-new release delivers an immersive shopping mall...

7 Reasons This Coffee Bar Accessories Is Worth Every Single Penny

📢 As an Amazon Associate, I earn from qualifying purchases.There comes a point when you realise that tolerating a frustrating situation is costing you...

Why Kitchen Organization Tools Is Currently Breaking the Internet

📢 As an Amazon Associate, I earn from qualifying purchases.There comes a point when you realise that tolerating a frustrating situation is costing you...

Is Dorm Room Hacks Worth Your Money Here Is Our Full Review

📢 As an Amazon Associate, I earn from qualifying purchases.If you had told me six months ago that a single purchase would change how...

Stop Buying Cheap Alternatives This Camping Essentials Is the Real Deal

📢 As an Amazon Associate, I earn from qualifying purchases.There comes a point when you realise that tolerating a frustrating situation is costing you...

Everything You Need to Know About Outdoor Patio Tech Right Now

📢 As an Amazon Associate, I earn from qualifying purchases.I'll be honest — I was skeptical at first. My daily routine had a gap...

Why Bathroom Organization Hacks Is Currently Breaking the Internet

📢 As an Amazon Associate, I earn from qualifying purchases.I'll be honest — I was skeptical at first. My daily routine had a gap...

Why Electric Cleaning Tools Is Currently Breaking the Internet

📢 As an Amazon Associate, I earn from qualifying purchases.💰 Official Price: Check on Amazon🌟 Why Buy the Electric Cleaning Tools?The Electric Cleaning Tools...