Problem:


Score : 300 points

Problem Statement

Does \sqrt{a} + \sqrt{b} < \sqrt{c} hold?

Constraints

1 \leq a, b, c \leq 10^9

All values in input are integers.

Input

Input is given from Standard Input in the following format:

a \ b \ c

Output

If \sqrt{a} + \sqrt{b} < \sqrt{c}, print Yes; otherwise, print No.

Sample Input 1

2 3 9

Sample Output 1

No

\sqrt{2} + \sqrt{3} < \sqrt{9} does not hold.

Sample Input 2

2 3 10

Sample Output 2

Yes

\sqrt{2} + \sqrt{3} < \sqrt{10} holds.



Sample input:
2 3 9


Sample output:
No

Submission status: Runtime Error

Solution code:
#include <bits/stdc++.h>
using intl = long long;
using ld = long double;
using namespace std;
#define rep(i, n) for(intl i = 0; i < (intl)(n); i++)
#define repd(i, n) for(intl i = (intl)((n) - 1); i >= 0; i--)
#define repi(i, a, b) for(intl i = (intl)(a); i < (intl)(b); i++)
#define max(a, b) ((a) > (b) ? (a) : (b))
#define min(a, b) ((a) < (b) ? (a) : (b))
#define all(x) (x).begin,(x).end()
#define m0(x) memset(x,0,sizeof(x))
#define fill(x,y) memset(x,y,sizeof(x))
#define debug(x) cout << #x << ":" << x << endl
const intl INF = 1e9;
const intl MOD = 1e9+7;
void fp(bool flag){
    if(flag)cout << "Yes" << endl;
    else cout << "No" << endl;
}
int main(){
    intl a;
    cin >> a;
    intl b;
    cin >> b;
    intl c;
    cin >> c;
    double d = sqrt(a);
    d += sqrt(b);
    if((((int)c) + 1) - c > 1)c += DBL_EPSILON;
    d -= sqrt(c);
    fp(d < 0);
    return 0;
}

Submission status: Runtime Error

Solution code:
    a, b, c = map(int, input().split())
     
    if b > a:
        temp = a
        a = b
        b = temp
     
    res = c - a
    res = res - b
    temp = 4*a*b
     
    if res**2 > temp:
        print ("Yes")
    else:
        print ("No")

Submission status: Runtime Error

Solution code:
a,b,c = map(int,input().split())
import math
import decimal
decimal.getcontext().prec = 15
if decimal(math.sqrt(a))+decimal(math.sqrt(b)) < decimal(math.sqrt(c)):
    print('Yes')
else:
    print('No')

Submission status: Runtime Error

Solution code:

A,B,C = input().split()
 
A_r = math.sqrt(int(A))
B_r = math.sqrt(int(B))
C_r = math.sqrt(int(C))
 
if A_r + B_r < C_r:
  print("Yes")
else:
  print("No")

Submission status: Runtime Error

Solution code:
import math
a=int(input())
b=int(input())
c=int(input())
if (math.sqrt(a)+math.sqrt(b) < math.sqrt(c)):
    print("Yes")
else :
    print("No")

Submission status: Runtime Error

Solution code:
from math import sqrt
a, b, c = map(int, input().split())

if a+b > c:
    print("No"):
elif (c-a-b)/2 > sqrt(a*b):
    print("Yes")
else:
    print("No")

Submission status: Runtime Error

Solution code:
def main():
    import math
    import decimal
    a,b,c = map(int,input().split())
    a = a*10**20
    b = b*10**20
    c = c*10**20
    #decimal.getcontext().prec = 20
    cr = decimal.Decimal(math.sqrt(c))
    ar = decimal.Decimal(math.sqrt(a))
    br = decimal.Decimal(math.sqrt(b))
    if ar**2 > a:
        ar = decimal.Decimal(round(ar,20))
    if br**2 > b:
        br = decimal.Decimal(round(br,20))
    if cr**2 > c:
        cr = decimal.Decimal(round(cr,20))

    if cr - (ar+br) > 0 :
        print("Yes")
    else:
        print("No")

if __name__ == "__main__":
    main()

Submission status: Runtime Error

Solution code:
#from decimal import *

#getcontext().prec = 20      # デフォルト28桁のところを20桁にする
#m = int(Decimal(n).sqrt())

def int_sqrt2(n):
    def f(prev):
        while True:
            m = (prev + n / prev) / 2
            if m >= prev:
                return prev
            prev = m
    
    return f(int(sqrt(n) * (1 + 1e-10)))

a, b, c = map(int, input().split())
#sqa = math.floor(math.sqrt(a)*10**(1000))/10**(1000)
#sqb = math.floor(math.sqrt(b)*10**(1000))/10**(1000)
#sqc = math.floor(math.sqrt(c)*10**(1000))/10**(1000)
#sqa = int(Decimal(a).sqrt())
#sqb = int(Decimal(b).sqrt())
#sqc = int(Decimal(c).sqrt())
sqa = int_sqrt2(a)
sqb = int_sqrt2(b)
sqc = int_sqrt2(c)



#sqa = float("{:.100f}".format(math.sqrt(a)))
#sqb = float("{:.100f}".format(math.sqrt(b)))
#sqc = float("{:.100f}".format(math.sqrt(c)))
 
#s = c - (a + b)
#t = 2 * sqa * sqb
if sqa + sqb < sqc:
  print("Yes")
else:
  print("No")

Submission status: Runtime Error

Solution code:
a, b, c = map(int, input().split())
from math import isqrt
if 2 * isqrt(a * b) < c - a - b:
    print('Yes')
else:
    print('No')

Submission status: Runtime Error

Solution code:
import bisect,collections,decimal,itertools,math,numpy,string
def I(): return int(input())
def F(): return float(input())
def S(): return input()
def LI(): return list(map(int,input().split()))
##################################################
def main(a,b,c):
    decimal.getcontext().prec = 20
    if decimal.Decimal(math.sqrt(a))+decimal.Decimal(math.sqrt(b)) < decimal.Decimal(math.sqrt(c)):
        return 'Yes'
    else:
        return 'No'
    
a,b,c = LI()
print(main(a,b,c))

Submission status: Runtime Error

Solution code:
import math
a,b,c=map(int,input().split())
ar=math.sqrt(a)
br=math.sqrt(b)
cr=math.sqrt(c)
if (a-b)/(cr*(ar-br))<1:
    print("Yes")
else:
    print("No")

Submission status: Runtime Error

Solution code:
a,b,c = list(map(int,input().split()))
#print(a,b,c)
if ((a**2 + b**2 + c**2)**2 -4*((a*b+b*c+c*a)**2))/(a**2 + b**2 + c**2-2*(a*b+b*c+c*a)) >0:
  print('Yes')
else:
  print('No')

Submission status: Runtime Error

Solution code:
from math import sqrt
# map(int,input().split())
a,b,c = map(int,input().split())
if 4*a*b < (c-a-b)*(c-a-b):
  print("Yes")
else if 4*a*b >= (c-a-b)*(c-a-b):
  print("No")
else:
  print("Yes")

Submission status: Runtime Error

Solution code:
import math

def main():
    a,b,c = list(map(int, input().split(' ')))
    if(math.sqrt(a) + math.sqrt(b) - math.sqrt():
        print('Yes')
    else:
        print('No')
main()

Submission status: Runtime Error

Solution code:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-


import math


def main():
    a, b, c = map(int, input().split())
    # ans = math.sqrt(a) + math.sqrt(b) < math.sqrt(c)
    # ans = (c - a - b) > 2 * math.sqrt(a * b)
    ans = (c - a - b)(c - a - b) > 4 * a * b
    print("Yes" if ans else "No")


if __name__ == '__main__':
    main()

Submission status: Runtime Error

Solution code:
a, b, c = map(int, input().split())

siki = (a - b) * (a - b) + (c - a) * (c - b) - c * (a + b) - ab

if siki > 0:
    print("Yes")
else:
    print("No")

Submission status: Runtime Error

Solution code:
a, b, c = open(0).read().split()
if 4*a*b < (c*c + a*a + b*b - 2*c*a - 2*c*b + 2*a*b):
  print("Yes")
else:
  print("Yes")

Submission status: Runtime Error

Solution code:
from decimal import Decimal
import math
a,b,c = map(int,input().split())
routeA = pow(a,0.5)
routeB = pow(b,0.5)
routeC = pow(c,0.5)

if Decimal(pow(a,0.5)) + Decimal(pow(b,0.5)) > Decimal(pow(c,0.5)) or math.isclose(routeA+routeB,routeC):
    print('No')
else:
    print('Yes')

Submission status: Runtime Error

Solution code:
import math

abc = list(map(int, input().split()))

if math.sqrt(abc[0], 11) + math.sqrt(abc[1], 11) < math.sqrt(abc[2], 11):
    print("Yes")
else:
    print("No")

Submission status: Runtime Error

Solution code:
def main():
    a,b,c = map(int, input().split())
    if a >= c or b >= c:
        print("No")
        return
    else:
        if math.sqrt(a) + math.sqrt(b) < math.sqrt(c):
            print("Yes")
        else:
            print("No")
main()

Submission status: Runtime Error

Solution code:
in_list = list(map(int,input().split()))
a = in_list[0]
b = in_list[1]
c = in_list[2]
if ((a*(a - 2*b) + b*(b - 2*c) + c*(c- 2*a)) > 0:
    print('Yes')
else:
    print('No')

Submission status: Runtime Error

Solution code:
#include <bits/stdc++.h>
using namespace std;
 
int main(){
    long long a, b, c;
    cin >> a >> b >> c;
    long double d = 2.0 * (sqrtl((long double)(a * b)));
    cout << ((long double)(c - a - b) > d ? "Yes" : "No") << endl;
    return 0;
}

Submission status: Runtime Error

Solution code:
import math
from decimal import *

getcontext().prec = 20      # デフォルト28桁のところを20桁にする
m = int(Decimal(n).sqrt())

a, b, c = map(int, input().split())
#sqa = math.floor(math.sqrt(a)*10**(1000))/10**(1000)
#sqb = math.floor(math.sqrt(b)*10**(1000))/10**(1000)
#sqc = math.floor(math.sqrt(c)*10**(1000))/10**(1000)
sqa = int(Decimal(a).sqrt())
sqb = int(Decimal(b).sqrt())
sqc = int(Decimal(c).sqrt())
 
#sqa = float("{:.100f}".format(math.sqrt(a)))
#sqb = float("{:.100f}".format(math.sqrt(b)))
#sqc = float("{:.100f}".format(math.sqrt(c)))
 
#s = c - (a + b)
#t = 2 * sqa * sqb
if sqa + sqb < sqc:
  print("Yes")
else:
  print("No")

Submission status: Runtime Error

Solution code:
a, b, c = map(int, input().split())
def int_sqrt2(n):
    def f(prev):
        while True:
            m = (prev + n / prev) / 2
            if m >= prev:
                return prev
            prev = m

    return f(int(sqrt(n) * (1 + 1e-10)))

if 2 * int_sqrt2(a * b) < c - a - b:
    print('Yes')
else:
    print('No')

Submission status: Runtime Error

Solution code:
a,b,c = map(int,input().split())
from decimal import *

roota = Decimal(a) ** Decimal(0.5)
rootb = Decimal(b) ** Decimal(0.5)
rootc = Decimal(c) ** Decimal(0.5)
n = 24
root_a = Decimal(str(roota)).quantize(Decimal(str(10**(n*-1))), rounding=ROUND_DOWN)
root_b = Decimal(str(rootb)).quantize(Decimal(str(10**(n*-1))), rounding=ROUND_DOWN)
root_c = Decimal(str(rootc)).quantize(Decimal(str(10**(n*-1))), rounding=ROUND_DOWN)

if root_a + root_b < root_c:
  print("Yes")
else:
  print("No")

Submission status: Runtime Error

Solution code:
#include <bits/stdc++.h>
using namespace std;

double squareRoot(double n) 
{ 
    return pow(2, 0.5*log2(n)); 
} 

int main ()
{
	double a, b, c;
	
	cin >> a >> b >> c;
	
	double A = squareRoot(a);
	double B = squareRoot(b);
	double C = squareRoot(c);

	if( abs(A + B - C) < 1e-9 ) return puts("No");
	
	if(A + B < C) puts("Yes");
	else puts("No");



	return 0;
}

Submission status: Runtime Error

Solution code:
#include <cmath>
#include <iostream>
using namespace std;
typedef long long ll;

int main() {
    ll a, b, c;
    cin >> a >> b >> c;
    if (sqrt(a) + sqrt(b) + 1e-11 < sqrt(c)) {
        cout << "Yes" << endl;
    } else {
        cout << "No" << endl;
    }
    return 0;
}

Submission status: Runtime Error

Solution code:
a,b,c = input().split()

a = int(a)
b = int(b)
c = int(c)

import math

if abs(math.sqrt(c) - math.sqrt(b) - math.sqrt(a)) > 1e-30:
    if math.sqrt(c) - math.sqrt(b) - math.sqrt(a) > 0:
        print('Yes')
    else:
        print('No')
else:
    t = random.random()
    if t > 0.5:
        print('Yes')
    else:
        print('No')

Submission status: Runtime Error

Solution code:
def main():
    import math
    import decimal
    a,b,c = map(int,input().split())
    a = a*10**20
    b = b*10**20
    c = c*10**20
    decimal.getcontext().prec = 20
    cr = decimal.Decimal(math.sqrt(c))
    ar = decimal.Decimal(math.sqrt(a))
    br = decimal.Decimal(math.sqrt(b))
    if ar**2 != a:
        ar = decimal.Decimal(round(ar,8))
    if br**2 != b:
        br = decimal.Decimal(round(br,8))
    if cr**2 != c:
        cr = decimal.Decimal(round(cr,8))

    if cr - (ar+br) > 0 :
        print("Yes")
    else:
        print("No")

if __name__ == "__main__":
    main()

Submission status: Runtime Error

Solution code:
a,b,c=map(int,input().split())

d=c-a-b

if d<0:
    print('No')
elif 4*a*b<d*d
    print('Yes')
else:
    print('No')

Submission status: Runtime Error

Solution code:
# from fractions import gcd
# from datetime import date, timedelta
# from heapq import *
# import heapq
# import math
# from collections import defaultdict, Counter, deque
# from bisect import *
# import itertools
# import fractions
# # import sys
# sys.setrecursionlimit(10 ** 7)
# MOD = 10 ** 9 + 7
# input = sys.stdin.readline


# def lcm(a, b):
#     return a * b / fractions.gcd(a, b)


# def make_divisors(n):
#     divisors = []
#     for i in range(1, int(n**0.5)+1):
#         if n % i == 0:
#             divisors.append(i)
#             if i != n // i:
#                 divisors.append(n//i)

#     # divisors.sort()
#     return divisors


# def factorize(n):
#     fct = []  # prime factor
#     b, e = 2, 0  # base, exponent
#     while b * b <= n:
#         while n % b == 0:
#             n = n // b
#             e = e + 1
#         if e > 0:
#             fct.append((b, e))
#         b, e = b + 1, 0
#     if n > 1:
#         fct.append((n, 1))
#     return fct


# def is_prime(n):
#     if n == 1:
#         return False

#     for k in range(2, int(math.sqrt(n)) + 1):
#         if n % k == 0:
#             return False

#     return True


# def primes(n):
#     is_prime = [True] * (n + 1)
#     is_prime[0] = False
#     is_prime[1] = False
#     for i in range(2, int(n**0.5) + 1):
#         if not is_prime[i]:
#             continue
#         for j in range(i * 2, n + 1, i):
#             is_prime[j] = False
#     return [i for i in range(n + 1) if is_prime[i]]

# def modpow(a, n, mod):
#     res = 1
#     while n > 0:
#         if n & 1:
#             res = res * a % mod
#         a = a * a % mod
#         n >>= 1
#     return res


# def modinv(a, mod):
#     return modpow(a, mod - 2, mod)


# def cnk(a, b):
#     MOD = 10**9+7
#     ret = 1
#     for i in range(b):
#         ret *= (a-i)
#         ret %= MOD
#         ret = ret * modinv(i+1, MOD) % MOD
#     return ret


# class UnionFind:
#     def __init__(self, n):
#         self.sz = [-1 for i in range(n)]

#     # 検索
#     def find(self, x):
#         if self.sz[x] < 0:
#             return x
#         else:
#             self.sz[x] = self.find(self.sz[x])
#             return self.sz[x]

#     # 併合
#     def union(self, x, y):
#         x = self.find(x)
#         y = self.find(y)
#         if x == y:
#             return False
#         if self.sz[x] > self.sz[y]:
#             x, y = y, x
#         self.sz[x] += self.sz[y]
#         self.sz[y] = x

#     # 同じ集合に属するか判定
#     def same(self, x, y):
#         return self.find(x) == self.find(y)

#     # xが含まれている集合のサイズを求める
#     def size(self, x):
#         return -self.sz[self.find(x)]

# class WeightedUnionFind:
#     def __init__(self, n):
#         self.par = [i for i in range(n+1)]
#         self.rank = [0] * (n+1)
#         # 根への距離を管理
#         self.weight = [0] * (n+1)

#     # 検索
#     def find(self, x):
#         if self.par[x] == x:
#             return x
#         else:
#             y = self.find(self.par[x])
#             # 親への重みを追加しながら根まで走査
#             self.weight[x] += self.weight[self.par[x]]
#             self.par[x] = y
#             return y

#     # 併合
#     def union(self, x, y, w):
#         rx = self.find(x)
#         ry = self.find(y)
#         # xの木の高さ < yの木の高さ
#         if self.rank[rx] < self.rank[ry]:
#             self.par[rx] = ry
#             self.weight[rx] = w - self.weight[x] + self.weight[y]
#         # xの木の高さ ≧ yの木の高さ
#         else:
#             self.par[ry] = rx
#             self.weight[ry] = -w - self.weight[y] + self.weight[x]
#             # 木の高さが同じだった場合の処理
#             if self.rank[rx] == self.rank[ry]:
#                 self.rank[rx] += 1

#     # 同じ集合に属するか
#     def same(self, x, y):
#         return self.find(x) == self.find(y)

#     # xからyへのコスト
#     def diff(self, x, y):
#         return self.weight[x] - self.weight[y]


class manacher:

    def __init__(self, l):
        self.n = len(l)
        self.m = 2*self.n+1
        self.d = ['&']*self.m
        self.r = [0]*self.m
        for i in range(self.n):
            self.d[2*i+1] = l[i]
        self.make_r()

    def make_r(self):
        i, j = 0, 0
        while i < self.m:
            while j <= i < self.m-j and self.d[i-j] == self.d[i+j]:
                j += 1
            self.r[i] = j
            k = 1
            while k <= i < self.m-k and k+self.r[i-k] < j:
                self.r[i+k] = self.r[i-k]
                k += 1
            i += k
            j -= k

    def judge(self, start, end):
        center = start+end
        return 2 * end - 1 < center + self.r[center]


def main():
    a, b, c = map(int, input().split())

    left = 4 * a * b
    right = (c - a - b)** 2
    if left <right:
        print("Yes")
    else:
        if c - a - b < -0.5:
            if a**0.5 + b**0.5 < c**0.5:
                print("Yes")
            else:
                print("Yes")
            exit()
        print("No")


if __name__ == '__main__':
    main()
# from fractions import gcd
# from datetime import date, timedelta
# from heapq import *
# import heapq
# import math
# from collections import defaultdict, Counter, deque
# from bisect import *
# import itertools
# import fractions
# # import sys
# sys.setrecursionlimit(10 ** 7)
# MOD = 10 ** 9 + 7
# input = sys.stdin.readline


# def lcm(a, b):
#     return a * b / fractions.gcd(a, b)


# def make_divisors(n):
#     divisors = []
#     for i in range(1, int(n**0.5)+1):
#         if n % i == 0:
#             divisors.append(i)
#             if i != n // i:
#                 divisors.append(n//i)

#     # divisors.sort()
#     return divisors


# def factorize(n):
#     fct = []  # prime factor
#     b, e = 2, 0  # base, exponent
#     while b * b <= n:
#         while n % b == 0:
#             n = n // b
#             e = e + 1
#         if e > 0:
#             fct.append((b, e))
#         b, e = b + 1, 0
#     if n > 1:
#         fct.append((n, 1))
#     return fct


# def is_prime(n):
#     if n == 1:
#         return False

#     for k in range(2, int(math.sqrt(n)) + 1):
#         if n % k == 0:
#             return False

#     return True


# def primes(n):
#     is_prime = [True] * (n + 1)
#     is_prime[0] = False
#     is_prime[1] = False
#     for i in range(2, int(n**0.5) + 1):
#         if not is_prime[i]:
#             continue
#         for j in range(i * 2, n + 1, i):
#             is_prime[j] = False
#     return [i for i in range(n + 1) if is_prime[i]]

# def modpow(a, n, mod):
#     res = 1
#     while n > 0:
#         if n & 1:
#             res = res * a % mod
#         a = a * a % mod
#         n >>= 1
#     return res


# def modinv(a, mod):
#     return modpow(a, mod - 2, mod)


# def cnk(a, b):
#     MOD = 10**9+7
#     ret = 1
#     for i in range(b):
#         ret *= (a-i)
#         ret %= MOD
#         ret = ret * modinv(i+1, MOD) % MOD
#     return ret


# class UnionFind:
#     def __init__(self, n):
#         self.sz = [-1 for i in range(n)]

#     # 検索
#     def find(self, x):
#         if self.sz[x] < 0:
#             return x
#         else:
#             self.sz[x] = self.find(self.sz[x])
#             return self.sz[x]

#     # 併合
#     def union(self, x, y):
#         x = self.find(x)
#         y = self.find(y)
#         if x == y:
#             return False
#         if self.sz[x] > self.sz[y]:
#             x, y = y, x
#         self.sz[x] += self.sz[y]
#         self.sz[y] = x

#     # 同じ集合に属するか判定
#     def same(self, x, y):
#         return self.find(x) == self.find(y)

#     # xが含まれている集合のサイズを求める
#     def size(self, x):
#         return -self.sz[self.find(x)]

# class WeightedUnionFind:
#     def __init__(self, n):
#         self.par = [i for i in range(n+1)]
#         self.rank = [0] * (n+1)
#         # 根への距離を管理
#         self.weight = [0] * (n+1)

#     # 検索
#     def find(self, x):
#         if self.par[x] == x:
#             return x
#         else:
#             y = self.find(self.par[x])
#             # 親への重みを追加しながら根まで走査
#             self.weight[x] += self.weight[self.par[x]]
#             self.par[x] = y
#             return y

#     # 併合
#     def union(self, x, y, w):
#         rx = self.find(x)
#         ry = self.find(y)
#         # xの木の高さ < yの木の高さ
#         if self.rank[rx] < self.rank[ry]:
#             self.par[rx] = ry
#             self.weight[rx] = w - self.weight[x] + self.weight[y]
#         # xの木の高さ ≧ yの木の高さ
#         else:
#             self.par[ry] = rx
#             self.weight[ry] = -w - self.weight[y] + self.weight[x]
#             # 木の高さが同じだった場合の処理
#             if self.rank[rx] == self.rank[ry]:
#                 self.rank[rx] += 1

#     # 同じ集合に属するか
#     def same(self, x, y):
#         return self.find(x) == self.find(y)

#     # xからyへのコスト
#     def diff(self, x, y):
#         return self.weight[x] - self.weight[y]


class manacher:

    def __init__(self, l):
        self.n = len(l)
        self.m = 2*self.n+1
        self.d = ['&']*self.m
        self.r = [0]*self.m
        for i in range(self.n):
            self.d[2*i+1] = l[i]
        self.make_r()

    def make_r(self):
        i, j = 0, 0
        while i < self.m:
            while j <= i < self.m-j and self.d[i-j] == self.d[i+j]:
                j += 1
            self.r[i] = j
            k = 1
            while k <= i < self.m-k and k+self.r[i-k] < j:
                self.r[i+k] = self.r[i-k]
                k += 1
            i += k
            j -= k

    def judge(self, start, end):
        center = start+end
        return 2 * end - 1 < center + self.r[center]


def main():
    a, b, c = map(int, input().split())

    left = 4 * a * b
    right = (c - a - b)** 2
    if left <right:
        print("Yes")
    else:
        if c - a - b < -0.5:
            if a**0.5 + b**0.5 < c**0.5:
                print("Yes")
            else:
                print("Yes")
            exit()
        print("No")


if __name__ == '__main__':
    main()

Submission status: Runtime Error

Solution code:
def main():
    import math
    import decimal
    a,b,c = map(int,input().split())
    a = a*10**20
    b = b*10**20
    c = c*10**20
    decimal.getcontext().prec = 20
    cr = decimal.Decimal(math.sqrt(c))
    ar = decimal.Decimal(math.sqrt(a))
    br = decimal.Decimal(math.sqrt(b))
    if ar**2 != a:
        ar = round(ar,8)
    if br**2 != b:
        br = round(br,8)
    if cr**2 != c:
        cr = round(cr,8)

    if cr - (ar+br) > 0 :
        print("Yes")
    else:
        print("No")

if __name__ == "__main__":
    main()

Submission status: Runtime Error

Solution code:
import numpy as np

a, b, c = input().split()
a = int(a)
b = int(b)
c = int(c)

if((a>c or b>c or (a+b)>c):
	print('No')
elif((a+b+(np.sqrt(a*b)*2)) < c):
	print('Yes')
else:
	print('No')

Submission status: Runtime Error

Solution code:
a, b, c = map(int, input().split())
a = decimal.Decimal(a)
b = decimal.Decimal(b)
b = decimal.Decimal(b)

if 4*a*b - (c-a-b)**2 < 0:
    print("Yes")
else:
    print("No")

Submission status: Runtime Error

Solution code:
import numpy as np
a,b,c=map(int, input().split())
r=c**2-(a**2+b**2)
if r>2*np.sqrt(ab):
  print("Yes")
else:
  print("No")

Submission status: Runtime Error

Solution code:
import numpy as np
a,b,c=map(int,input().split())
a*=10**12;b*=10**12;c*=10**12
if(np.sqrt(a)+np.sqrt(b)-np.sqrt(c)>=0):
    print("No")
else:
    print("Yes")

Submission status: Runtime Error

Solution code:
def main():
    import math
    import decimal
    a,b,c = map(int,input().split())
    a = a*10**20
    b = b*10**20
    c = c*10**20
    decimal.getcontext().prec = 20
    cr = decimal.Decimal(math.sqrt(c))
    ar = decimal.Decimal(math.sqrt(a))
    br = decimal.Decimal(math.sqrt(b))
    if ar**2 != a:
        ar = round(ar,8)
    if br**2 != b:
        br = round(br,8)
    if cr**2 != c:
        cr = round(cr,8)

    if cr - (ar+br) > 0 :
        print("Yes")
    else:
        print("No")

if __name__ == "__main__":
    main()

Submission status: Runtime Error

Solution code:
import numpy as np
a, b, c = map(int, input().split())

A = a+b-c+2*np.sqrt(np.around(a*b, 10))
if A < 0:
    print('Yes')
else:
    print('No')

Submission status: Runtime Error

Solution code:
import math
a,b,c = map(float,input().split())
if c^2 - (a + b - 2*math.sqrt(a*b))^2>0:
  print("Yes")
else:
  print("No")

Submission status: Runtime Error

Solution code:
a, b, c = [float(i) for i in input().split()]



if (a**2 + b**2 - c**2 + 2(a*b +b*c + c*a)) < 0:
    print('Yes')
else:
    print('No')

Submission status: Runtime Error

Solution code:
a, b, c = map(int, input().split())
print("Yes" if sqrt(a*10000000) + sqrt(b*10000000) < sqrt(c*10000000) else "No")

Submission status: Runtime Error

Solution code:
[a,b,c] = [int(i) for i in input().split()]

if a == b:
  l = 4*a
  r = c
else:
  if a+b < c:
  	l = 4*a*b
  	r = (c -(a+b))**2
  else:
    print("No")
    
if l < r:
  print("Yes")
else:
  print("No")

Submission status: Runtime Error

Solution code:
a,b,c=map(int,input().split(" "))

migi=(c-a-b)**0.5
hidari=4*a*b
if(hidari<migi):
    print("Yes")
else:
    print("No")

Submission status: Runtime Error

Solution code:
nums = input().split()
if (nums[0]*nums[0] + nums[1]*nums[1] + nums[2]*nums[2] - 2*nums[0]*nums[1] - 2*nums[1]*nums[2] - 2*nums[0]*nums[2]) > 0:
	print("Yes")
else:
	print!("No")

Submission status: Runtime Error

Solution code:
# -*- coding: utf-8 -*-
import math

input_num = input().split(" ")
a = int(input_num[0])
b = int(input_num[1])
c = int(input_num[2])

if math.sqrt(a) + math.sqrt(b) math.sqrt(c) < 0:
  print("Yes")
else:
  print("No")

Submission status: Runtime Error

Solution code:
#include <bits/stdc++.h>
using namespace std;
 
int main(){
    long long a, b, c;
    cin >> a >> b >> c;
    long long d = 2 * (long long)(sqrt((double)(a * b)));
    long long e = a + d + b;
    if(e != c) cout << (e < c ? "Yes" : "No") << endl;
    else cout << "Yes" << endl;
    return 0;
}

Submission status: Runtime Error

Solution code:
import math
from decimal import *

a, b, c = map(int, input().split())

a = Decimal(a)
b = Decimal(b)
c = Decimal(c)

if round(4*a*b, 0)< (round(abs(c - a - b),0)**2:
  print("Yes")
else:
  print("No")

Submission status: Runtime Error

Solution code:
a,b,c = input().split()

a = int(a)
b = int(b)
c = int(c)

import math

if abs(math.sqrt(c) - math.sqrt(b) - math.sqrt(a)) > 1e-10:
    if math.sqrt(c) - math.sqrt(b) - math.sqrt(a) > 0:
        print('Yes')
    else:
        print('No')
else:
    d = math.sqrt(c) * 1e10
    e = math.sqrt(b) * 1e10
    f = math.sqrt(a) * 1e10
    if math.sqrt(c\d) - math.sqrt(e) - math.sqrt(f) > 0:
        print('Yes')
    else:
        print('No')

Submission status: Runtime Error

Solution code:
# from fractions import gcd
# from datetime import date, timedelta
# from heapq import *
# import heapq
# import math
# from collections import defaultdict, Counter, deque
# from bisect import *
# import itertools
# import fractions
# # import sys
# sys.setrecursionlimit(10 ** 7)
# MOD = 10 ** 9 + 7
# input = sys.stdin.readline


# def lcm(a, b):
#     return a * b / fractions.gcd(a, b)


# def make_divisors(n):
#     divisors = []
#     for i in range(1, int(n**0.5)+1):
#         if n % i == 0:
#             divisors.append(i)
#             if i != n // i:
#                 divisors.append(n//i)

#     # divisors.sort()
#     return divisors


# def factorize(n):
#     fct = []  # prime factor
#     b, e = 2, 0  # base, exponent
#     while b * b <= n:
#         while n % b == 0:
#             n = n // b
#             e = e + 1
#         if e > 0:
#             fct.append((b, e))
#         b, e = b + 1, 0
#     if n > 1:
#         fct.append((n, 1))
#     return fct


# def is_prime(n):
#     if n == 1:
#         return False

#     for k in range(2, int(math.sqrt(n)) + 1):
#         if n % k == 0:
#             return False

#     return True


# def primes(n):
#     is_prime = [True] * (n + 1)
#     is_prime[0] = False
#     is_prime[1] = False
#     for i in range(2, int(n**0.5) + 1):
#         if not is_prime[i]:
#             continue
#         for j in range(i * 2, n + 1, i):
#             is_prime[j] = False
#     return [i for i in range(n + 1) if is_prime[i]]

# def modpow(a, n, mod):
#     res = 1
#     while n > 0:
#         if n & 1:
#             res = res * a % mod
#         a = a * a % mod
#         n >>= 1
#     return res


# def modinv(a, mod):
#     return modpow(a, mod - 2, mod)


# def cnk(a, b):
#     MOD = 10**9+7
#     ret = 1
#     for i in range(b):
#         ret *= (a-i)
#         ret %= MOD
#         ret = ret * modinv(i+1, MOD) % MOD
#     return ret


# class UnionFind:
#     def __init__(self, n):
#         self.sz = [-1 for i in range(n)]

#     # 検索
#     def find(self, x):
#         if self.sz[x] < 0:
#             return x
#         else:
#             self.sz[x] = self.find(self.sz[x])
#             return self.sz[x]

#     # 併合
#     def union(self, x, y):
#         x = self.find(x)
#         y = self.find(y)
#         if x == y:
#             return False
#         if self.sz[x] > self.sz[y]:
#             x, y = y, x
#         self.sz[x] += self.sz[y]
#         self.sz[y] = x

#     # 同じ集合に属するか判定
#     def same(self, x, y):
#         return self.find(x) == self.find(y)

#     # xが含まれている集合のサイズを求める
#     def size(self, x):
#         return -self.sz[self.find(x)]

# class WeightedUnionFind:
#     def __init__(self, n):
#         self.par = [i for i in range(n+1)]
#         self.rank = [0] * (n+1)
#         # 根への距離を管理
#         self.weight = [0] * (n+1)

#     # 検索
#     def find(self, x):
#         if self.par[x] == x:
#             return x
#         else:
#             y = self.find(self.par[x])
#             # 親への重みを追加しながら根まで走査
#             self.weight[x] += self.weight[self.par[x]]
#             self.par[x] = y
#             return y

#     # 併合
#     def union(self, x, y, w):
#         rx = self.find(x)
#         ry = self.find(y)
#         # xの木の高さ < yの木の高さ
#         if self.rank[rx] < self.rank[ry]:
#             self.par[rx] = ry
#             self.weight[rx] = w - self.weight[x] + self.weight[y]
#         # xの木の高さ ≧ yの木の高さ
#         else:
#             self.par[ry] = rx
#             self.weight[ry] = -w - self.weight[y] + self.weight[x]
#             # 木の高さが同じだった場合の処理
#             if self.rank[rx] == self.rank[ry]:
#                 self.rank[rx] += 1

#     # 同じ集合に属するか
#     def same(self, x, y):
#         return self.find(x) == self.find(y)

#     # xからyへのコスト
#     def diff(self, x, y):
#         return self.weight[x] - self.weight[y]


class manacher:

    def __init__(self, l):
        self.n = len(l)
        self.m = 2*self.n+1
        self.d = ['&']*self.m
        self.r = [0]*self.m
        for i in range(self.n):
            self.d[2*i+1] = l[i]
        self.make_r()

    def make_r(self):
        i, j = 0, 0
        while i < self.m:
            while j <= i < self.m-j and self.d[i-j] == self.d[i+j]:
                j += 1
            self.r[i] = j
            k = 1
            while k <= i < self.m-k and k+self.r[i-k] < j:
                self.r[i+k] = self.r[i-k]
                k += 1
            i += k
            j -= k

    def judge(self, start, end):
        center = start+end
        return 2 * end - 1 < center + self.r[center]


def main():
    a, b, c = map(int, input().split())

    left = 4 * a * b
    right = (c - a - b)** 2
    if left <right:
        print("Yes")
    else:
        if c - a - b < -1:
            if a**0.5 + b**0.5 < c**0.5:
                print("Yes")
            else:
                print(1/0)
                print("No")
            exit()
        print("No")


if __name__ == '__main__':
    main()

Submission status: Runtime Error

Solution code:
a = eval(input("Enter: "))
b = eval(input("Enter: "))
c = eval(input("Enter: "))
d =  a ** (1/2) + b ** (1/2) 
v = c ** (1/2)
if d < v:
  print("Yes")
else:
  print("No")

Submission status: Runtime Error

Solution code:
a,b,c = map(float, input().split())

if a > 10**8 or b> 10**8 or c> 10**8:
    assert False ,"aa"

import numpy as np
sqa=np.sqrt(a)
sqb=np.sqrt(b)
sqc=np.sqrt(c)




if sqa + sqb < sqc:
    print("Yes")
else:
    print("No")

Submission status: Runtime Error

Solution code:
import math
import sympy as sym
a,b,c = map(int,input().split())

if math.sqrt(sym.Float(a)) + math.sqrt(sym.Float(b)) < math.sqrt(sym.Float(c)):
    print("Yes")
else:
    print("No")