#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a,b,c;
    cin>>a>>b>>c;
    a=(a*a)+(b*b);
    c=a-(c*c);
    if(c<0)
    cout<<"Yes"<<endl;
    else
         cout<<"No"<<endl;
}


/*
      Ashraful Islam Paran
      24-April-2021
      18:03:40
*/
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define f(n) for (int i = 0; i < n; i++)
#define show(x, y) cout << x << "         " << y << "\n"
#define fo(i, x, n) for (int i = x; i < n; i++)
#define fb(i, x, n) for (int i = n - 1; i >= x; i--)
#define w(t)  \
    int t;    \
    cin >> t; \
    while (t--)

#define dbg(args...)            \
    do                          \
    {                           \
        cerr << #args << " : "; \
        faltu(args);            \
    } while (0)
clock_t tStart = clock();
#define timeStamp dbg("Execution Time: ", (double)(clock() - tStart) / CLOCKS_PER_SEC)
void faltu()
{
    cerr << endl;
}
template <typename T>
void faltu(T a[], int n)
{
    for (int i = 0; i < n; ++i)
        cerr << a[i] << ' ';
    cerr << endl;
}
template <typename T, typename... hello>
void faltu(T arg, const hello &... rest)
{
    cerr << arg << ' ';
    faltu(rest...);
}

typedef unsigned long long ull;
typedef vector<long long> vi;
#define msi map<string, long long>
#define mii map<long long, long long>
const int MX = 2e5 + 5;
const int INF = 1e18;
const int mod = 1e9 + 7;
#define pb push_back
#define endl "\n"
#define yes cout << "YES\n"
#define no cout << "NO\n"
#define all(x) x.begin(), x.end()
#define ff first
#define ss second

inline void normal(int &a)
{
    if (a >= mod)
        a %= mod;
    (a < 0) && (a += mod);
}
inline int modMul(int a, int b)
{
    normal(a), normal(b);
    return (a * b) % mod;
}
inline int modAdd(int a, int b)
{
    normal(a), normal(b);
    return (a + b) % mod;
}
inline int modSub(int a, int b)
{
    normal(a), normal(b);
    a -= b;
    normal(a);
    return a;
}
inline int modPow(int b, int p)
{
    int r = 1;
    while (p)
    {
        if (p & 1)
            r = modMul(r, b);
        b = modMul(b, b);
        p >>= 1;
    }
    return r;
}
inline int modInverse(int a) { return modPow(a, mod - 2); }
inline int modDiv(int a, int b) { return modMul(a, modInverse(b)); }

void print(int a[], int n)
{
    for (int i = 0; i < n; i++)
    {
        cout << a[i] << " ";
    }
    cout << endl;
}

void print(vi &v)
{
    f(v.size())
    {
        cout << v[i] << " ";
    }
    cout << endl;
}

bool sortbysec(const pair<int, int> &a,
               const pair<int, int> &b)
{
    //return (a.second < b.second);
    if (a.first == b.first)
    {
        return (a.second > b.second);
    }
    else
    {
        return (a.ff < b.ff);
    }
}

int32_t main()
{
#ifndef ONLINE_JUDGE
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
    freopen("error.txt", "w", stderr);
#else
    // online submission
#endif
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
   
    int a,b,c;
    cin>>a>>b>>c;
    if((a*a+b*b)<c*c)
    {
        cout<<"Yes"<<endl;
    }
    else
    {
        cout<<"No"<<endl;
    }
   
    cerr << "Time : " << 1.0 * clock() / CLOCKS_PER_SEC << "s\n";
    return 0;
}