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 (Python):
a,b=map(int,input().split());print(max(a+a-1,b+b-1,a+b))

Solution (Python):
A,B =map(int,input().split())
C = max(A+A-1,B+B-1,A+B)
print(C)

Solution (Python):
a, b = map(int, input().split())
if a == b:
    print(a + b)
else:
    print(max(a, b) + max(a, b) - 1)

Solution (Python):
a,b=map(int,input().split())
print(max(a+a-1,a+b,b+b-1))

Solution (Python):
import sys, re
from collections import deque, defaultdict, Counter
from math import ceil, sqrt, hypot, factorial, pi, sin, cos, radians
from itertools import permutations, combinations, product
from operator import itemgetter, mul
from copy import deepcopy
from string import ascii_lowercase, ascii_uppercase, digits

def input(): return sys.stdin.readline().strip()
def INT(): return int(input())
def MAP(): return map(int, input().split())
def LIST(): return list(map(int, input().split()))
sys.setrecursionlimit(10 ** 9)
INF = float('inf')
MOD = 10 ** 9 + 7

A, B = MAP()

print(max(A+A-1,A+B, B+B-1))

Solution (Python):

def main():
    a, b = [int(i) for i in input().split()]

    print(max(a+b, 2*a-1, 2*b-1 ))
main()

Solution (Python):
a, b = map(int, input().split())
if a==b:
	print(2*a)
else:
	print(max(a,b)*2-1)

Solution (Python):
a,b=map(int, input().split())
print(max(a+a-1,a+b,b+b-1))

Solution (Python):
A, B = map(int, input().split())

print(max(2*A - 1, 2*B - 1, A + B))

Solution (Python):
a,b = map(int,input().split())
print( max( a + b , a + a - 1 , b + b - 1 ))

Solution (Python):
a, b = map(int, input().split())
print(max(a+a-1, b+b-1, a+b))

Solution (Python):
A, B = map(int, input().split())
print(max(A*2-1,A+B,B*2-1))

Solution (Python):
a,b = map(int,input().split())
ans = max(2*a-1,2*b-1,a+b)
print(ans)

Solution (Python):


import sys


INF = float('inf')
MOD = 10 ** 9 + 7

def LI(): return [int(x) for x in sys.stdin.readline().split()]
def LI_(): return [int(x) - 1 for x in sys.stdin.readline().split()]
def LS(): return sys.stdin.readline().split()
def II(): return int(sys.stdin.readline())
def SI(): return input()


def main():
    a, b = LI()

    return max(a + a - 1, b + b - 1, a + b)


print(main())

Solution (Python):
a,b=map(int,input().split())
print(max(a+a-1,b+b-1,a+b))

Solution (Python):
a, b = map(int, input().split())

print(max(2 * a - 1, a + b, 2 * b - 1))

Solution (Python):
a,b=map(int,input().split())
print(max(a+a-1,b+b-1,a+b))

Solution (Python):
import sys
stdin = sys.stdin
 
sys.setrecursionlimit(10**5) 
 
def li(): return map(int, stdin.readline().split())
def li_(): return map(lambda x: int(x)-1, stdin.readline().split())
def lf(): return map(float, stdin.readline().split())
def ls(): return stdin.readline().split()
def ns(): return stdin.readline().rstrip()
def lc(): return list(ns())
def ni(): return int(stdin.readline())
def nf(): return float(stdin.readline())

a,b = li()
print(max(2*a-1, a+b, 2*b-1))

Solution (Python):
A, B = map(int, input().split())
print(max(A+A-1, A+B, B+B-1))

Solution (Python):
A, B = map(int, input().split())

if(A>B):
    print(A*2-1);
elif(A==B):
    print(A+B);
else:
    print(B*2-1);

Solution (Python):
a,b=map(int,input().split())
print(max(2*a-1,2*b-1,a+b))

Solution (Python):
a,b=list(map(int, input().split()))
if a == b:
  print(a*2)
else:
  print(max(a,b)*2-1)

Solution (Python):
def Y(flag):
    if flag:
        print('YES')
    else:
        print('NO')

def y(flag):
    if flag:
        print('Yes')
    else:
        print('No')

a,b = map(int,input().split())
l = [a,b,a-1,b-1]
l = sorted(l)
print(l[-1] + l[-2])

Solution (Python):


import itertools
from collections import Counter
import bisect

def main():
    A, B = map(int, input().split())
    print(max(A + B, A + A - 1, B + B - 1))

if __name__ == '__main__':
    main()

Solution (Python):
from collections import defaultdict,deque
import sys,heapq,bisect,math,itertools,string,queue,datetime,random
sys.setrecursionlimit(10**8)
INF = float('inf')
mod = 10**9+7
eps = 10**-7
def inpl(): return list(map(int, input().split()))
def inpls(): return list(input().split())

A,B =inpl()
if A==B:
    print(A+B)
else:
    print(max(A,B)*2-1)

Solution (Python):
a, b = list(map(int, input().split()))
print(max(a + b, a + a - 1, b + b - 1))

Solution (Python):

from collections import defaultdict
from collections import deque
from heapq import heappush, heappop
import sys
import math
import bisect
import random
def LI(): return list(map(int, sys.stdin.readline().split()))
def I(): return int(sys.stdin.readline())
def LS():return list(map(list, sys.stdin.readline().split()))
def S(): return list(sys.stdin.readline())[:-1]
def IR(n):
    l = [None for i in range(n)]
    for i in range(n):l[i] = I()
    return l
def LIR(n):
    l = [None for i in range(n)]
    for i in range(n):l[i] = LI()
    return l
def SR(n):
    l = [None for i in range(n)]
    for i in range(n):l[i] = S()
    return l
def LSR(n):
    l = [None for i in range(n)]
    for i in range(n):l[i] = LS()
    return l
sys.setrecursionlimit(1000000)
mod = 1000000007


def A():
    a,b = LI()
    if a == b:
        print(2*a)
    else:
        print(2*max(a,b)-1)
    return


def B():
    n = I()

    return


def C():
    n = I()

    return


def D():
    n = I()

    return


if __name__ == "__main__":
    A()