Problem:
Score: 100 points

Problem Statement

We have two distinct integers A and B.

Print the integer K such that |A - K| = |B - K|.

If such an integer does not exist, print IMPOSSIBLE instead.

Constraints

All values in input are integers.

0 \leq A,\ B \leq 10^9

A and B are distinct.

Input

Input is given from Standard Input in the following format:

A B

Output

Print the integer K satisfying the condition.

If such an integer does not exist, print IMPOSSIBLE instead.

Sample Input 1

2 16

Sample Output 1

9

|2 - 9| = 7 and |16 - 9| = 7, so 9 satisfies the condition.

Sample Input 2

0 3

Sample Output 2

IMPOSSIBLE

No integer satisfies the condition.

Sample Input 3

998244353 99824435

Sample Output 3

549034394

Solution in C# (Mono 4.6.2.0) (judge verdict: Runtime Error)

using System;
class ProgramC
    {
        static void Main(string[] args)
        {
            
            string input = Console.ReadLine();
            int n = int.Parse(input);

            string[] input_a = Console.ReadLine().Split(' ');
            int[] a = new int[n + 1];
            for(int i = 0;i < n + 1;i++)
                a[i] = int.Parse(input_a[i]);
            
            string[] input_b = Console.ReadLine().Split(' ');
            int[] b = new int[n];
            for(int i = 0;i < n;i++)
                b[i] = int.Parse(input_b[i]);

            int count = 0;

            if(a[0] >= b[0])
                count = b[0];
            else
                count = a[0];
            
            int temp_pre = b[0] - count;
            
            for(int i = 1;i <= n;i++)
            {
                int temp = 0;
                if(i < n)
                    temp = b[i] + temp_pre;
                else
                    temp = temp_pre;

                if(a[i] >= temp)
                {
                    count += temp;
                    temp_pre = 0;
                }
                else
                {
                    count += a[i];
                    temp_pre = temp - a[i];
                }
            }
            Console.WriteLine(count);
            
            

        }
    }