# Check if a number with even number of digits is palindrome or not

Given a number N containing an even number of digits. The task is to check whether that number is palindrome or not.

Examples:

```Input: N = 123321
Output: Palindrome

Input: 1234
Output: Not palindrome```

A Naive Approach is to traverse from the front and back of that number and stop where they do not match.
An Efficient Approach is to use the below fact:

Palindrome Number having even number of digits is always divisible by 11.

Suppose the number is d1 d2 d3 d4…dn, whered1, d2, d3.. are digits of a number. If it is a palindrome then d1 = dn, d2 = dn-1, d3 = dn-2…..and so on. Now since divisibility of 11 states that the difference of sum of alternate digits of a number should be zero and same in the case of palindrome having even no. of digits i.e.

d1 + d3 + …+ dn-1 = d2 + d4 + d6 + … + dn

So, a palindromic number having even number of digits is always divisible by 11.

## C++

 `// C++ program to find number is palindrome``// or not without using any extra space``#include ``using` `namespace` `std;` `// Function to check if the number is palindrome``bool` `isPalindrome(``int` `n)``{``    ``// if divisible by 11 then true``    ``if` `(n % 11 == 0) {``        ``return` `true``;``    ``}` `    ``// if not divisible by 11``    ``return` `false``;``}` `// Driver code``int` `main()``{``    ``isPalindrome(123321) ? cout << ``"Palindrome"``                         ``: cout << ``"Not Palindrome"``;``    ``return` `0;``}`

## Java

 `// Java program to find number``// is palindrome or not without ``// using any extra space ``class` `GFG ``{``    ``// Function to check if the ``    ``// number is palindrome``    ``static` `boolean` `isPalindrome(``int` `n) ``    ``{ ``        ``// if divisible by 11 then true ``        ``if` `(n % ``11` `== ``0``) ``        ``{ ``            ``return` `true``; ``        ``} ``    ` `        ``// if not divisible by 11 ``        ``return` `false``; ``    ``} ``    ` `    ``// Driver code ``    ``public` `static` `void` `main(String[] args) ``    ``{``        ``System.out.println(isPalindrome(``123321``) ? ``                                   ``"Palindrome"` `: ``                               ``"Not Palindrome"``);``    ``}``}` `// This code is contributed by Bilal`

## Python3

 `# Python 3 program to find number is palindrome ``# or not without using any extra space.` `# Function to check if the number is palindrome ``def` `isPalindrome(n) :` `    ``# if divisible by 11 then return True ``    ``if` `n ``%` `11` `=``=` `0` `:``        ``return` `True` `    ``# if not divisible by 11 then return False``    ``return` `False` `# Driver code``if` `__name__ ``=``=` `"__main__"` `:` `    ``n ``=` `123321``     ` `    ``if` `isPalindrome(n) :``        ``print``(``"Palindrome"``)``    ``else` `:``        ``print``(``"Not Palindrome"``)``            ` `# This code is contributed by ANKITRAI1`

## C#

 `// C# program to find number``// is palindrome or not without ``// using any extra space ``using` `System;` `class` `GFG ``{``    ``// Function to check if the ``    ``// number is palindrome``    ``static` `bool` `isPalindrome(``int` `n) ``    ``{ ``        ``// if divisible by ``        ``// 11 then true ``        ``if` `(n % 11 == 0) ``        ``{ ``            ``return` `true``; ``        ``} ``    ` `        ``// if not divisible by 11 ``        ``return` `false``; ``    ``} ``    ` `    ``// Driver code ``    ``public` `static` `void` `Main() ``    ``{``        ``Console.Write(isPalindrome(123321) ? ``                              ``"Palindrome"` `: ``                          ``"Not Palindrome"``);``    ``}``}` `// This code is contributed``// by ChitraNayal`

## PHP

 ``

## Javascript

 ``

Output
`Palindrome`

Time Complexity: O(1)
Auxiliary Space: O(1)

Previous
Next