// Wrongri-La Shower // 45度回転 #include #include typedef long long ll; const double EPS = 1e-9; int X, Y; double R; bool can(int k){ return X-R > -k && k > X+R && Y-R > -k && k > Y+R; } int main(){ scanf("%d %d %lf", &X, &Y, &R); { int x = X + Y, y = X - Y; X = x; Y = y; R *= std::sqrt(2); } int lb = X + Y, ub = 252521; while(ub - lb > 1){ int mid = (lb+ub) / 2; if(can(mid)){ ub = mid; }else{ lb = mid; } } printf("%d\n", ub); }