#include #include #include using namespace std; long long DP[61]; int main() { vectorv(4); cin >> v[0] >> v[1] >> v[2] >> v[3]; sort(v.begin(), v.end()); long long ans = INT32_MAX; for (int i = 1; i < 29; i++)for (int j = i + 1; j < 30; j++)for (int k = j + 1; k < 31; k++) { for (int l = 0; l < 61; l++)DP[l] = INT32_MAX; DP[0] = 0; for (int l = 0; l < 31; l++) { if (DP[l] == INT32_MAX)continue; DP[l + i] = min(DP[l + i], DP[l] + 1); DP[l + j] = min(DP[l + j], DP[l] + 1); DP[l + k] = min(DP[l + k], DP[l] + 1); } ans = min(ans, DP[v[0]] + DP[v[1]] + DP[v[2]] + DP[v[3]]); } cout << ans << endl; return 0; }