Problem:
Score : 100 points

Problem Statement

There are two buttons, one of size A and one of size B.

When you press a button of size X, you get X coins and the size of that button decreases by 1.

You will press a button twice. Here, you can press the same button twice, or press both buttons once.

At most how many coins can you get?

Constraints

All values in input are integers.

3 \leq A, B \leq 20

Input

Input is given from Standard Input in the following format:

A B

Output

Print the maximum number of coins you can get.

Sample Input 1

5 3

Sample Output 1

9

You can get 5 + 4 = 9 coins by pressing the button of size 5 twice, and this is the maximum result.

Sample Input 2

3 4

Sample Output 2

7

Sample Input 3

6 6

Sample Output 3

12

Solution in C# (Mono 4.6.2.0) (judge verdict: Accepted)

using System;
using System.Collections.Generic;
using static Exter;
using System.Linq;
using console = System.Console;

public class App
{
    public static void Main(string[] args)
    {
        console.WriteLine(Max(readarr.Max()*2-1,preadarr.Sum()));
    }
}
public class Exter
{
    public static int Max(params int[] p)=>p.Max();
    public static short Max(params short[] p)=>p.Max();
    public static long Max(params long[] p)=>p.Max();
    public static string read
    {
        get
        {
            char c;
            string s = "";
            while(true)
            {
                c = console.ReadKey().KeyChar;
                if(c == ' '||c=='\n')
                    break;
                s += c;
            }
            return s;
        }
    }
    public static int readi
    {
        get
        {
            char c;
            string s = "";
            while(true)
            {
                c = console.ReadKey().KeyChar;
                if(c == ' '||c=='\n')
                    break;
                s += c;
            }
            return int.Parse(s);
        }
    }
    public static int[] preadarr;
    public static int[] readarr
    {
        get
        {
            preadarr = console.ReadLine().Split().Select(s=>int.Parse(s)).ToArray();
            return preadarr;
        }
    }
    public static long readl
    {
        get
        {
            char c;
            string s = "";
            while(true)
            {
                c = console.ReadKey().KeyChar;
                if(c == ' '||c=='\n')
                    break;
                s += c;
            }
            return long.Parse(s);
        }
    }
}