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
      • 19
        BFS

  • Create an equation

    There are 3 operations that we can perform:
    1. (+) Addition modulo m
    1. (-) Subtraction modulo m
    1. (*) Multiplication modulo m
    Given 3 integers , you are asked to place those operations between the numbers in such a way that the result of the equation is equal to 0.
    All the operations are performed in standard mathematical order (first multiplication, then addition and subtraction from left to right).

    Input

    The first line of the input contains a single integer m (1 ≤ m ≤ ).
    The next line contains 3 space-separated integers ().

    Output

    The program should print the resulting equation. If it’s impossible to obtain such an equation, the program should print Impossible.

    Examples

    Input
    Output
    5 8 2 4
    8 * 2 + 4
     

    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