Algorithms and Data Structures

  • Profound Academy

    • Status
      • 1
        Implementation
      • 2
        Bitwise operations
      • 3
        Prefix Sums
      • 4
        Sliding window / Two pointers
      • 5
        Modular Arithmetic
      • 6
        Number Theory
      • 7
        Binary Search
      • 8
        Basic Sorting
      • 9
        Greedy Algorithms
      • 10
        Basic Dynamic Programming
      • 11
        Recursion
      • 12
        Linked LIst
      • 13
        Queue & Stack
      • 14
        Binary tree + BST
      • 15
        Divide & Conquer + Advanced Sorting
      • 16
        Heap
      • 17
        Hashing
      • 18
        Graph Representation

  • Divisibility by 11

    Did you know that there is an easy way to check if a number is divisible by 11? For large numbers, we can take all the digits in odd positions and sum them together, after that take all the digits in even positions and sum those together, and subtract those two sums from each other. If the resulting number is divisible by 11, then the whole number is divisible by 11.

    Input

    The input contains a very large positive number that can have up to (million) digits.

    Output

    The program should print Yes if the given number is divisible by 11 and No otherwise.

    Examples

    Input
    Output
    563706
    Yes
    12345678
    No

    Explanation

    1. 563706 β†’ (5 + 3 + 0) - (6 + 7 + 6) = 8 - 19 = -11 which is divisible by 11
    1. 12345678 β†’ (1 + 3 + 5 + 7) - (2 + 4 + 6 + 8) = 16 - 20 = -4 which is not divisible by 11
    Β 

    Constraints

    Time limit: 1 seconds

    Memory limit: 512 MB

    Output limit: 1 MB

    To check your solution you need to sign in
    Sign in to continue