#include #include #include #include #include int max(int x, int y) { if (x < y) return y; return x; } int main() { int r, g, b; int start = 0, end = 1e9; scanf("%d %d %d", &r, &g, &b); while (end - start > 1) { int mid = (start + end) / 2; bool ok = true; int amari = max(0, r - mid) / 2 + max(0, g - mid) / 2 + max(0, b - mid) / 2; int husoku = max(0, mid - r) + max(0, mid - g) + max(0, mid - b); if (amari * 2 < husoku) ok = false; if (ok) start = mid; else end = mid; } printf("%d\n", start); return (0); }