NAJPWG - Playing with GCD

no tags 

Tanmoy recently learn about euclid gcd algorithm.

This algorithm looks like:


   if(b==0):return a

   return gcd(b,a%b)

Now he want to find out how many pair (x,y) can be possible in range N, which gcd is greater than 1. Here pair (x,y) and (y,x) consider as same pair. 1<=x,y<=N.

He can find out it small number easily but for a large number its realy hard to find out. Now he needs your help. Write a programme that find out number of such pair.


Input start with an integer number T(≤10^5), which is number of test cases.

Each test case contain a integer N (1≤N≤10^5).


For each case, Print case Number and Desired answer






Case 1: 2
Case 2: 4


hide comments
thiefthief: 2019-10-05 07:10:46


Last edit: 2019-10-05 07:40:34
selfcoder24: 2019-07-13 17:29:24

Concept of Phi and observation. Be extra sure on the output format :-)

immim: 2018-12-22 06:03:14

Phi Sieve + Cumulative sum.....See output format. :)

m2do: 2018-03-12 19:36:09

Euler Totient + DP <3

itachi_2016: 2018-01-02 15:27:33

Very easy !

chetan4060: 2018-01-01 11:45:39

ac in second go:-)
very conceptual question .

mahilewets: 2017-09-08 14:38:53

Sudden AC after realizing I can precalc for all possible queries

mahilewets: 2017-09-07 16:31:10

I think answer(3)=2 because gcd(2,2)=2>1 and gcd(3,3)=3>1

So there are two pairs

azam_9: 2016-06-22 20:03:31

Beware of output format..costed me many W.A..

Piyush Kumar: 2016-06-21 16:53:55

@atuldo, It is not mentioned that x and y cannot be equal. So for N=3, (2,2) and (3,3) are pairs whose gcd is greater than 1.

Ans: Read the statement carefully. You got the point.

Last edit: 2016-12-04 07:26:23

Added by:Najmuzzaman
Time limit:0.5s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64