#include <iostream>
#include <cmath>
// Uolevi vaihtaa tuolin jalan pituutta. Palauttaa käytetyn energian määrän
int change(int x, int val)
{
return abs(x - val);
}
// Uolevi testaa, jos jotkin jaloista ovat saman pituisia
// palauttaa numeron joka esiintyi eniten
// tunkee found-muuttujaan 1 jos samoja löytyi, muuten 0
// varoitus: runsaasti purkkakonsteja edessä
int same(int a, int b, int c, int d, int & found)
{
found = 1;
int ab = 0, ac = 0, ad = 0, bc = 0, bd = 0, cd = 0;
int abc = 0, bcd = 0, acd = 0, abd = 0;
if (a == b) ab = 1;
if (a == c) ac = 1;
if (a == d) ad = 1;
if (b == c) bc = 1;
if (b == d) bd = 1;
if (c == d) cd = 1;
if (ab && ac) abc = 1;
if (bc && cd) bcd = 1;
if (ac && cd) acd = 1;
if (ab && bd) abd = 1;
if (abc) return a;
if (bcd) return b;
if (acd) return a;
if (abd) return a;
if (ab) return a;
if (ac) return a;
if (ad) return a;
if (bc) return b;
if (bd) return b;
if (cd) return c;
found = 0;
return 0;
}
int close(int a, int b, int c, int d, int & mindiff1, int & mindiff2)
{
int diff = 0;
int mindiff = 0;
mindiff1 = mindiff2 = -1;
diff = abs(a - b);
if (diff < mindiff)
{
mindiff = diff;
mindiff1 = 0;
mindiff2 = 1;
}
diff = abs(a - c);
if (diff < mindiff)
{
mindiff = diff;
mindiff1 = 0;
mindiff2 = 2;
}
diff = abs(a - d);
if (diff < mindiff)
{
mindiff = diff;
mindiff1 = 0;
mindiff2 = 3;
}
diff = abs(b - c);
if (diff < mindiff)
{
mindiff = diff;
mindiff1 = 1;
mindiff2 = 2;
}
diff = abs(b - d);
if (diff < mindiff)
{
mindiff = diff;
mindiff1 = 1;
mindiff2 = 3;
}
diff = abs(c - d);
if (diff < mindiff)
{
mindiff = diff;
mindiff1 = 2;
mindiff2 = 3;
}
switch (mindiff1)
{
case 0:
mindiff1 = a;
break;
case 1:
mindiff1 = b;
break;
case 2:
mindiff1 = c;
break;
case 3:
mindiff1 = d;
break;
}
switch (mindiff2)
{
case 0:
mindiff2 = a;
break;
case 1:
mindiff2 = b;
break;
case 2:
mindiff2 = c;
break;
case 3:
mindiff2 = d;
break;
}
if (mindiff < 5) return 1;
return 0;
}
int main()
{
int a,b,c,d;
std::cin >> a >> b >> c >> d;
int found = 0;
int min = same(a,b,c,d, found);
if (found == 0)
{
int md1, md2;
if (close(a,b,c,d,md1,md2))
{
min = md1;
}
else
min = (a + b + c + d) / 4;
}
int result = change(a, min) + change(b, min) + change(c, min) + change(d, min);
std::cout << result << std::endl;
return 0;
}