R, G, B = map(int, input().split()) sum_rgb = R + G + B low = 0 high = sum_rgb // 3 best = 0 while low <= high: mid = (low + high) // 2 # Calculate deficits d_r = max(mid - R, 0) d_g = max(mid - G, 0) d_b = max(mid - B, 0) total_deficit = d_r + d_g + d_b # Calculate surplus s_r = max(R - mid, 0) s_g = max(G - mid, 0) s_b = max(B - mid, 0) total_surplus = (s_r // 2) + (s_g // 2) + (s_b // 2) if total_deficit <= total_surplus: best = mid low = mid + 1 else: high = mid - 1 print(best)