#include<stdio.h>
int main(void)
{
int a[20], b[20], c[40], d[2000], m[200] = { 0 }, i, j, t, k = 0, max,f,g,h,x;
scanf("%d%d%d", &f, &g, &h);
for (i = 0, j = 1; i < f; i++)
{
a[i] = j;
j += 1;
}//设置骰子面数
for (i = 0, j = 1; i < g; i++)
{
b[i] = j;
j += 1;
}//设置骰子面数
for (i = 0, j = 1; i < h; i++)
{
c[i] = j;
j += 1;
}//设置骰子面数
for (i = 0; i < f; i++)
{
for (j = 0; j < g; j++)
{
for (t = 0; t < h; t++)
{
d[k] = a[i] + b[j] + c[t];
k += 1;
}
}
}//算出三个面数和的所有可能性
for (i = 3; i <=f+g+h; i++)
{
for (j = 0; j <f*g*h; j++)
{
if (d[j] == i)
m[i] += 1;
}
}//算出各种面数和出现的次数
max = m[3];
for (i = 3; i <=f+g+h; i++)
{
if (m[i] > max)
{
max = m[i];
x = i;
}
}//找到出现次数最多的那个值(面数和)
printf("%d",x);
return 0;
}