Sponsors

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;
}

Burning Man festivalgoer is...

Burning Man Festivalgoer Found Dead in Pool of Blood;...

Fleischmann says ‘never’ to...

Fleischmann Declares 'Never' to Town Halls, Calling Them 'Left-Wing...

Plastic pollution poses growing...

Plastic Pollution: A Growing Health Threat in Malaysia Malaysia is...

Is A Battery-Powered Cooler...

Is a Battery-Powered Cooler Like the Anker SOLIX EverFrost...

One to watch: Macquarie...

Macquarie Predicts Double-Digit Returns for ASX Healthcare Stock Macquarie Group,...

THE FREEPER CANTEEN –...

The Freeper Canteen: A Look That Up, It Must...

Burning Man festivalgoer is found dead in pool of blood as cops launch murder probe

Burning Man Festivalgoer Found Dead in Pool of Blood; Murder Investigation Launched A tragic incident has cast a shadow over the iconic Burning Man festival...

Fleischmann says ‘never’ to town hall (Ruby Rayner/timesfreepress.com)

Fleischmann Declares 'Never' to Town Halls, Calling Them 'Left-Wing Bait' Chattanooga Congressman Chuck Fleischmann has emphatically ruled out holding town hall meetings, labeling them as...

Plastic pollution poses growing health threat as Malaysia eyes Extended Producer Responsibility law

Plastic Pollution: A Growing Health Threat in Malaysia Malaysia is grappling with a significant environmental and health crisis: plastic pollution. A recent report highlights...

Is A Battery-Powered Cooler Like The Anker SOLIX EverFrost 2 Worth It?

Is a Battery-Powered Cooler Like the Anker SOLIX EverFrost 2 Worth It? The summer heat is on, and keeping your drinks refreshingly cold can be...

One to watch: Macquarie tips double-digit returns for this ASX healthcare stock

Macquarie Predicts Double-Digit Returns for ASX Healthcare Stock Macquarie Group, a prominent Australian financial services company, has issued a bullish prediction for a specific ASX-listed...

THE FREEPER CANTEEN – The Look That Up, It Must Be On My Bucket List Quiz – Wednesday, August 27, 2025

The Freeper Canteen: A Look That Up, It Must Be On My Bucket List The Freeper Canteen, a unique online community, has recently launched a...

215% PENGU Rally Incoming? Analyst Says Token ‘Inches’ From Next Leg Up

215% PENGU Rally Incoming? Analyst Predicts Imminent Breakout The cryptocurrency market is constantly fluctuating, and predicting the next big move is a challenge. However, one...

Junk is the new punk: Why we’re falling back in love with retro tech

Junk is the New Punk: Why We're Falling Back in Love with Retro Tech In a world dominated by sleek, minimalist designs and cutting-edge technology,...

Are weighted vests good for bones and muscle? Fact-checking a fitness trend – NPR

Unlocking the Power of AI-Generated Content for SEO In today's digital landscape, search engine optimization (SEO) is paramount for online success. But creating high-quality,...