Questions based on various concepts of number theory and different types of number are quite frequently asked in programming contests. In this article, we discuss some famous facts and algorithms:
Interesting Facts :
 All 4 digit palindromic numbers are divisible by 11.
 If we repeat a threedigit number twice, to form a sixdigit number. The result will will be divisible by 7, 11 and 13, and dividing by all three will give your original threedigit number.
 A number of form 2^{N} has exactly N+1 divisors. For example 4 has 3 divisors, 1, 2 and 4.
 To calculate sum of factors of a number, we can find the number of prime factors and their exponents. Let p_{1}, p_{2}, … p_{k} be prime factors of n. Let a_{1}, a_{2}, .. a_{k} be highest powers of p_{1}, p_{2}, .. p_{k} respectively that divide n, i.e., we can write n as n = (p_{1}^{a1})*(p_{2}^{a2})* … (p_{k}^{ak}).
Sum of divisors = (1 + p_{1} + p_{1}^{2} ... p_{1}^{a1}) * (1 + p_{2} + p_{2}^{2} ... p_{2}^{a2}) * ............................................. (1 + p_{k} + p_{k}^{2} ... p_{k}^{ak}) We can notice that individual terms of above formula are Geometric Progressions (GP). We can rewrite the formula as. Sum of divisors = (p_{1}^{a1+1}  1)/(p_{1} 1) * (p_{2}^{a2+1}  1)/(p_{2} 1) * .................................. (p_{k}^{ak+1}  1)/(p_{k} 1)
 For a product of N numbers, if we have to subtract a constant K such that the product gets its maximum value, then subtract it from a largest value such that largest valuek is greater than 0. If we have to subtract a constant K such that the product gets its minimum value, then subtract it from the smallest value where smallest valuek should be greater than 0
 Goldbech`s conjecture: Every even integer greater than 2 can be expressed as the sum of 2 primes.
 Perfect numbers or Amicable numbers: Perfect numbers are those numbers which are equal to the sum of their proper divisors. Example: 6 = 1 + 2 + 3
 Lychrel numbers: Are those numbers that cannot form a palindrome when repeatedly reversed and added to itself. For example 47 is not a Lychrel Number as 47 + 74 = 121
 Lemoine’s Conjecture : Any odd integer greater than 5 can be expressed as a sum of an odd prime (all primes other than 2 are odd) and an even semiprime. A semiprime number is a product of two prime numbers. This is called Lemoine’s conjecture.

Fermat’s Last Theorem : According to the theorem, no three positive integers a, b, c satisfy the equation,
for any integer value of n greater than 2. For n = 1 and n = 2, the equation have infinitely many solutions.
Number Theory Algorithms
GCD and LCM
Recent Articles on GCD and LCM!
Prime Factorization and Divisors :
 Prime factors
 Pollard’s Rho Algorithm for Prime Factorization
 Find all divisors of a natural number
 Sum of all proper divisors of a natural number
 Prime Factorization using Sieve O(log n) for multiple queries
 Find politeness of a number
 Print prime numbers in a given range using C++ STL
 kth prime factor of a given number
 Smith Numbers
Recent Articles on Prime Factors!
Fibonacci Numbers:
 Fibonacci Numbers
 Interesting facts about Fibonacci numbers
 How to check if a given number is Fibonacci number?
 Zeckendorf’s Theorem (NonNeighbouring Fibonacci Representation)
Recent Articles on Fibonacci Numbers!
Catalan Numbers :
Recent Articles on Catalan Numbers!
Modular Arithmetic :
 Modular Exponentiation (Power in Modular Arithmetic)
 Modular multiplicative inverse
 Modular Division
 Multiplicative order
 Find Square Root under Modulo p  Set 1 (When p is in form of 4*i + 3)
 Find Square Root under Modulo p  Set 2 (Shanks Tonelli algorithm)
 Euler’s criterion (Check if square root under modulo p exists)
 Multiply large integers under large modulo
 Find sum of modulo K of first N natural number
 How to compute mod of a big number?
 BigInteger Class in Java
 Modulo 10^9+7 (1000000007)
 How to avoid overflow in modular multiplication?
 RSA Algorithm in Cryptography
 Find (a^b)%m where ‘a’ is very large
 Find power of power under mod of a prime
Recent Articles on Modular Arithmetic!
 Euler’s Totient Function
 Optimized Euler Totient Function for Multiple Evaluations
 Euler’s Totient function for all numbers smaller than or equal to n
 Primitive root of a prime number n modulo n
nCr Computations :
 Binomial Coefficient
 Compute nCr % p  Set 1 (Introduction and Dynamic Programming Solution)
 Compute nCr % p  Set 2 (Lucas Theorem)
 Compute nCr % p  Set 3 (Using Fermat Little Theorem)
Chinese Remainder Theorem :
 Set 1 (Introduction)
 Set 2 (Inverse Modulo based Implementation)
 Cyclic Redundancy Check and Modulo2 Division
 Using Chinese Remainder Theorem to Combine Modular equations
Factorial :
 Factorial
 Legendre’s formula (Given p and n, find the largest x such that p^x divides n!)
 Sum of divisors of factorial of a number
 Count Divisors of Factorial
 Compute n! under modulo p
 Wilson’s Theorem
 Primality Test  Set 1 (Introduction and School Method)
 Primality Test  Set 2 (Fermat Method)
 Primality Test  Set 3 (Miller–Rabin)
 Primality Test  Set 4 (SolovayStrassen)
 GFact 22  (2^x + 1 and Prime)
 Euclid’s Lemma
 Sieve of Eratosthenes
 Segmented Sieve
 Sieve of Atkin
 Sieve of Sundaram to print all primes smaller than n
 Sieve of Eratosthenes in 0(n) time complexity
 Check if a large number is divisible by 3 or not
 Check if a large number is divisible by 11 or not
 To check divisibility of any large number by 999
 Carmichael Numbers
 Generators of finite cyclic group under addition
 Measure one litre using two vessels and infinite water supply
 Program to find last digit of n’th Fibonnaci Number
 GCD of two numbers when one of them can be very large
 Find Last Digit Of a^b for Large Numbers
 Remainder with 7 for large numbers
 Count all subarrays having sum divisible by k
 Partition a number into two divisible parts
 Number of substrings divisible by 6 in a string of integers
 ‘Practice Problems’ on Modular Arithmetic
 ‘Practice Problems’ on Number Theory
 Ask a Question on Number theory
 Padovan, OESIS
 Interesting facts about Fibonacci numbers
 Number Theory  Generators of finite cyclic group under addition
 An interesting solution to get all prime numbers smaller than n
 Generate a list of n consecutive composite numbers (An interesting method)
 Count of interesting primes upto N
 Combinatorial Game Theory  Set 2 (Game of Nim)
 Combinatorial Game Theory  Set 4 (Sprague  Grundy Theorem)
 Clustering Coefficient in Graph Theory
 Mathematics  Graph theory practice questions
 Game Theory (Normal form game)  Set 2 (Game with Pure Strategy)
 Game Theory (Normalform game)  Set 3 (Game with Mixed Strategy)
 Game Theory (Normalform Game)  Set 4 (Dominance PropertyPure Strategy)
 Game Theory (Normalform Game)  Set 5 (Dominance PropertyMixed Strategy)
 Game Theory (Normalform Game)  Set 6 (Graphical Method [2 X N] Game)
 Game Theory (Normalform Game)  Set 7 (Graphical Method [M X 2] Game)
 Proof that Independent Set in Graph theory is NP Complete
 Top 10 Algorithms and Data Structures for Competitive Programming
 Euclidean algorithms (Basic and Extended)
 Number of factors of very large number N modulo M where M is any prime number
 C Program for Basic Euclidean algorithms

Recent Articles on Factorial!
Prime numbers and Primality Tests :
Recent Articles on Prime Number!
Sieve Algorithms :
Divisibility and Large Numbers :
Recent Articles on Divisibility!
Misc :
Recent Articles on Mathematical Algorithms!
Recent Articles on Number Theory
Above facts are contributed by Yash Kodesia. If you like GeeksforGeeks and would like to contribute, you can also write an article and mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more facts about Number Theory.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a studentfriendly price and become industry ready.