#ifndef _GLIBCXX_NO_ASSERT #include #endif #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #ifdef __GXX_EXPERIMENTAL_CXX0X__ #include #include #include #include #include #include #include #include #endif #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #ifdef __GXX_EXPERIMENTAL_CXX0X__ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #endif #include using namespace std; int main () { int a , b , c; cin >> a >> b >> c; double r , s , t; if( a&&b ) { r = sqrt ( a*a + b*b ) + c; r *= r; s = sqrt ( r *b*b / ( a*a + b*b ) ); t = sqrt ( r *a *a / ( a*a + b*b ) ); r = s + t; r += !!( r - (int) r ); } else if( a == 0 && a == 0 ) { r = sqrt ( c*c * 2 ); r += !!( r - (int) r ); } else if( a == 0 ) { r = abs ( b ) + c; } else { r = abs ( a ) + c; } cout << (int) r << endl; }