Harryxun/stf_run huggingface dataset:
a,b,c = map(float, input().split())

if a > 10**6 or b> 10**6 or c> 10**6:
    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")

### FIXED CODE ###

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

from decimal import Decimal
sqa=Decimal(a).sqrt()
sqb=Decimal(b).sqrt()
sqc=Decimal(c).sqrt()

if sqa+sqb<sqc:
    print("Yes")
else:
    print("No")
from collections import defaultdict


def dfs(graph, start):
    visited, stack = set(), [start]
    while stack:
        vertex = stack.pop()
        if vertex not in visited:
            visited.add(vertex)
            stack.extend(graph[vertex] - visited)
    return visited


if __name__ == "__main__":
    n, m, k = map(int, input().split())
    AB = [map(int, input().split()) for _ in range(m)]
    CD = [map(int, input().split()) for _ in range(k)]

    graph_f = defaultdict(set)
    graph_b = defaultdict(set)

    for a, b in AB:
        graph_f[a - 1].add(b - 1)
        graph_f[b - 1].add(a - 1)

    for c, d in CD:
        graph_b[c - 1].add(d - 1)
        graph_b[d - 1].add(c - 1)

    visited = set()
    conns = {}
    for i in range(n):
        if i not in visited:
            conn = dfs(graph_f, i)
            visited |= {i} | conn
            conns = {**conns, **{j: conn for j in conn}}

    print(' '.join([str(len(conns[i] - graph_f[i] - graph_b[i]) - 1) for i in range(n)]))


### FIXED CODE ###

class UnionFind:
    def __init__(self, n):
        self.n = n
        self.parents = [-1] * n

    def find(self, x):
        if self.parents[x] < 0:
            return x
        else:
            self.parents[x] = self.find(self.parents[x])
            return self.parents[x]

    def union(self, x, y):
        x = self.find(x)
        y = self.find(y)

        if x == y:
            return

        if self.parents[x] > self.parents[y]:
            x, y = y, x

        self.parents[x] += self.parents[y]
        self.parents[y] = x

    def same(self, x, y):
        return self.find(x) == self.find(y)

    def size(self, x):
        return -self.parents[self.find(x)]


if __name__ == "__main__":
    n, m, k = map(int, input().split())

    u = UnionFind(n)
    f_cnt = [0] * n
    b_cnt = [0] * n

    for _ in range(m):
        a, b = map(int, input().split())
        u.union(a - 1, b - 1)
        f_cnt[a - 1] += 1
        f_cnt[b - 1] += 1

    for _ in range(k):
        c, d = map(int, input().split())
        if u.same(c - 1, d - 1):
            b_cnt[c - 1] += 1
            b_cnt[d - 1] += 1

    print(*[(u.size(i) - f_cnt[i] - b_cnt[i] - 1) for i in range(n)])
import sys
input = sys.stdin.readline

import numpy as np

N,M = map(int,input().split())
MOD = 998244353

def cumprod_mod(arr):
    L = len(arr)
    Lsq = int(L**.5+1)
    arr = np.resize(arr,Lsq**2).reshape(Lsq,Lsq)
    for n in range(1,Lsq):
        arr[:,n] *= arr[:,n-1]; arr[:,n] %= MOD
    for n in range(1,Lsq):
        arr[n] *= arr[n-1,-1]; arr[n] %= MOD
    arr = arr.ravel()[:L]
    return arr

U = 2*10**6 + 100
x = np.arange(U,dtype=np.int64)
x[0] = 1
fact = cumprod_mod(x)

x = np.arange(U,0,-1,dtype=np.int64)
x[0] = pow(int(fact[-1]),MOD-2,MOD)
fact_inv = cumprod_mod(x)[::-1]

def comb(n,k):
    return fact[n] * fact_inv[k] % MOD * fact_inv[n-k] % MOD

x = comb(3*M+N-1,N-1) # 何でもいいから作る
y = N * comb(M+N-2,N-1) # どれかが 2M+1 以上

# 奇数がM+1個以上あるものを除く
odd_cnt = np.arange(M+2,3*M+1,2)
S = (3*M - odd_cnt)//2
bl = (odd_cnt <= N)&(S>=0)
odd_cnt = odd_cnt[bl]
S = S[bl]
arr = fact[N] * fact_inv[odd_cnt] % MOD * fact_inv[N-odd_cnt] % MOD
# SをN個で作る -> S+N-1 C N-1
arr *= fact[S+N-1] * fact_inv[N-1] % MOD * fact_inv[S] % MOD
arr %= MOD
z = arr.sum() % MOD

answer = x-y-z
answer %= MOD
print(answer)

### FIXED CODE ###

import sys
input = sys.stdin.readline

import numpy as np

N,M = map(int,input().split())
MOD = 998244353

def cumprod_mod(arr):
    L = len(arr)
    Lsq = int(L**.5+1)
    arr = np.resize(arr,Lsq**2).reshape(Lsq,Lsq)
    for n in range(1,Lsq):
        arr[:,n] *= arr[:,n-1]; arr[:,n] %= MOD
    for n in range(1,Lsq):
        arr[n] *= arr[n-1,-1]; arr[n] %= MOD
    arr = arr.ravel()[:L]
    return arr

U = 5*10**6
x = np.arange(U,dtype=np.int64)
x[0] = 1
fact = cumprod_mod(x)

x = np.arange(U,0,-1,dtype=np.int64)
x[0] = pow(int(fact[-1]),MOD-2,MOD)
fact_inv = cumprod_mod(x)[::-1]

def comb(n,k):
    return fact[n] * fact_inv[k] % MOD * fact_inv[n-k] % MOD

x = comb(3*M+N-1,N-1) # 何でもいいから作る
y = N * comb(M+N-2,N-1) # どれかが 2M+1 以上

# 奇数がM+1個以上あるものを除く
odd_cnt = np.arange(M+2,3*M+1,2)
S = (3*M - odd_cnt)//2
bl = (odd_cnt <= N)&(S>=0)
odd_cnt = odd_cnt[bl]
S = S[bl]
arr = fact[N] * fact_inv[odd_cnt] % MOD * fact_inv[N-odd_cnt] % MOD
# SをN個で作る -> S+N-1 C N-1
arr *= fact[S+N-1] * fact_inv[N-1] % MOD * fact_inv[S] % MOD
arr %= MOD
z = arr.sum() % MOD

answer = x-y-z
answer %= MOD
print(answer)
import sys


def check(A, B):
    if A > 8 or B > 8:
        return False
    return True


ret = check(
    int(sys.stdin.readline()),
    int(sys.stdin.readline()))
if ret:
    print('Yay!')
else:
    print(':(')

### FIXED CODE ###

import sys


def check(A, B):
    if A > 8 or B > 8:
        return False
    return True


ret = check(*tuple(map(int, sys.stdin.readline().split())))
if ret:
    print('Yay!')
else:
    print(':(')
import sys
for line in sys.stdin.readlines():
    list=map(float,line.split(" "))
    x=list[0:6:2]
    y=list[1:6:2]
    xp=list[6]
    yp=list[7]
    xv=[x[a%3]-x[(a+1)%3] for a in xrange(4)]
    yv=[y[a%3]-y[(a+1)%3] for a in xrange(4)]
    xpv=[xp-x[a] for a in xrange(3)]
    ypv=[yp-y[a] for a in xrange(3)]
    cross=[xv[i]*ypv[i]-yv[i]*xpv[i] for i in xrange(3)]
    sorted(cross)
    if (cross[2]>0 and cross[0]>0) or (cross[2]<0 and cross[0]<0): 
        print "YES"
    else:
        print "NO"

### FIXED CODE ###

import sys
for line in sys.stdin.readlines():
    try:
        list=map(float,line.split())
        x=list[0:6:2]
        y=list[1:6:2]
        xp=list[6]
        yp=list[7]
        xv=[x[a%3]-x[(a+1)%3] for a in xrange(4)]
        yv=[y[a%3]-y[(a+1)%3] for a in xrange(4)]
        xpv=[xp-x[a] for a in xrange(3)]
        ypv=[yp-y[a] for a in xrange(3)]
        cross=[xv[i]*ypv[i]-yv[i]*xpv[i] for i in xrange(3)]
        if (cross[2]>0 and cross[1]>0  and cross[0]>0) or (cross[2]<0 and cross[1]<0 and cross[0]<0): 
            print "YES"
        else:
            print "NO"
    except:
        pass
#temp
a,b = map(int, input())
if	(a*b)%2==1:
  print("Yes")
else:
  print("No")

### FIXED CODE ###

a,b = map(int, input().split())
if	(a*b)%2==1:
  print("Yes")
else:
  print("No")
ri = lambda S: [int(v) for v in S.split()]


def rii():
    return ri(input())


N, M, K = rii()
A = rii()
B = rii()

i = j = 0


def dp(i, j, k):
    ki = kj = mki = mkj = 0

    if i < N:
        Ki = k - A[i] if A[i] <= k else 0
        mki = 1 + dp(i + 1, j, Ki) if Ki >= 0 else 0
    if j < M:
        kj = k - B[j] if B[j] <= k else 0
        mkj = 1 + dp(i, j + 1, kj) if kj >= 0 else 0

    return max(mki, mkj)


print(dp(0, 0, K))


### FIXED CODE ###

from itertools import accumulate
from bisect import bisect_left

ri = lambda S: [int(v) for v in S.split()]


def rii():
    return ri(input())


N, M, K = rii()
A = rii()
B = rii()

i = j = 0

pA = [0] + list(accumulate(A))
pB = [0] + list(accumulate(B))

ans = 0
for i, a in enumerate(pA):
    br = 0
    if K >= a:
        r = K - a
        br = i
    
    if r:
        j = bisect_left(pB, r)
        if j != len(pB):
            if pB[j] > r:
                j -= 1
            br += j
    
    ans = max(ans, br)

print(ans)
a,b,c=map(int,input().split())
k =int(input())
m = list[a,b,c]
maxm =max(m)
maxm =maxm*(2**k)
max(m)=maxm
print(sum(m))

### FIXED CODE ###

A, B, C = map(int, input().split())
K = int(input())

max_num = max([A, B, C])
max_num = max_num * (2 ** K)
print(sum([A, B, C]) - max([A, B, C]) + max_num)
S = int(input())

s = S % 3600

h = S / 3600

m = S - (h * 60) - s

print(str(h,m,s,sep=":"))

### FIXED CODE ###

S = int(input())

h = S // 3600

m = S % 3600 // 60

s = S % 3600 % 60

print(str(h) + ':' + str(m) + ':' + str(s))
c1 = input()
c2 = input()
c3 = input()
print(''.join([c1[0],c[1],c[2]])

### FIXED CODE ###

c = []
for i in range(3):
    c.append(list(input()))
print(''.join([c[0][0],c[1][1],c[2][2]]))
def Main():
  A = int(input())
  B = int(input())
  C = int(input())
  if A == B:
    if C!=A:
      print("true")
    else: 
      print("false")
  elif A == C:
    if B!=A:
      print("true")
    else : 
      print("false")
  elif B == C:
    if A!=B :
      print("true")
    else:
      print("false")
  else:
    print("false")

Main()    


### FIXED CODE ###

def Main(A,B,C):

  if A == B:
    if C!=A:
      print("Yes",end="")
    else:
      print("No",end="")
  elif A == C:
    if B!=A:
      print("Yes",end="")
    else :
      print("No",end="")
  elif B == C:
    if A!=B :
      print("Yes",end="")
    else:
      print("No",end="")
  else:
    print("No",end="")
A,B,C = [int(num) for num in input().split(' ')]
Main(A,B,C)
import sys
input = sys.stdin.readline

x, n = [int(x) for x in input().split()]
p = [int(x) for x in input().split()]

q = [x for x in range(1, 101) if x not in p]
diffs = [abs(x-qk) for qk in q]
mindiff = min(diffs)
idx = diffs.index(mindiff)
print(q[idx])

### FIXED CODE ###

import sys
input = sys.stdin.readline

def calc():
    x, n = [int(x) for x in input().split()]

    if n == 0:
        q = [x for x in range(102)]
    else:
        p = [int(x) for x in input().split()]
        q = [x for x in range(102) if x not in p]
    diffs = [abs(x - qk) for qk in q]
    mindiff = min(diffs)
    idx = diffs.index(mindiff)
    print(q[idx])

calc()
import math
import numpy as np
N,M=map(int,input().split())
A=list(map(int,input().split()))
c=1
test=A[0]
l=0

while test%2 == 0:
  test=test//2
  c*=2
  
for i in np.arange(N-1):
  if A[i+1]%c!=0:
    print(0)
    l=1
    break
  elif A[i+1]%(c*2)==0:
    print(0)
    l=1
    break
  else:
    k=A[i+1]//c
    test=test*k//math.gcd(test,k)
if l==0:
  k=test*c/2


### FIXED CODE ###

import math
import numpy as np
N,M=map(int,input().split())
A=list(map(int,input().split()))
c=1
test=A[0]
l=0

while test%2 == 0:
  test=test//2
  c*=2

def lcm_base(x, y):
    return (x * y) // math.gcd(x, y)
  
for i in np.arange(N-1):
  if A[i+1]%c!=0:
    print(0)
    l=1
    break
  elif A[i+1]%(c*2)==0:
    print(0)
    l=1
    break
  else:
    k=A[i+1]//c
    test=lcm_base(test, k)
if l==0:
  k=test*c//2
  print(M//k//2 + M//k%2)
x=int(input())
l=[]
s=x
for x in map(int,input().split()):
    l.append(x)
z=0
suml=0
h=[]
while(z<s-1):
    if(l[z]>=l[z+1]):
        suml+=1
    elif(l[z]>=l[z+1]):
        suml+=1
    else:
        h.append(suml)
        suml=0    
    z+=1
    if(z==s-1):
        h.append(suml)
print(max(h))        



### FIXED CODE ###

x=int(input())
l=[]
s=x
for x in map(int,input().split()):
    l.append(x)
if(s==1):
    print(0)
    exit()    
z=0
suml=0
h=[]
while(z<s-1):
    if(l[z]>=l[z+1]):
        suml+=1
    elif(l[z]>=l[z+1]):
        suml+=1
    else:
        h.append(suml)
        suml=0    
    z+=1
    if(z==s-1):
        h.append(suml)
print(max(h))
def dfs(i, f, sum, s):
    if i == 3:
        if sum == 7:
            print(f+"=7")
            exit()

    dfs(i+1, f+"-"+s[i+1], sum - int(s[i+1]), s)
    dfs(i+1, f+"+"+s[i+1], sum + int(s[i+1]), s)

def main():
    s = input()

    dfs(0, s[0], int(s[0]), s)
    
if __name__ == '__main__':
    main()


### FIXED CODE ###

def dfs(i, f, sum, s):
    if i == 3:
        if sum == 7:
            print(f+"=7")
            exit()
        return

    dfs(i+1, f+"-"+s[i+1], sum - int(s[i+1]), s)
    dfs(i+1, f+"+"+s[i+1], sum + int(s[i+1]), s)

def main():
    s = input()

    dfs(0, s[0], int(s[0]), s)
    
if __name__ == '__main__':
    main()
n = int(input())
monsters = list(map(int, input().split()))
heros = list(map(int, input().split()))

def f(i, j):
  if i == j == 1:
    return min(monsters[i], heros[i])
  if i == j - 1:
    return min(monsters[i+1], heros[i] - f(i, i)
  if i == j:
	return min(monsters[i] - f(i-1, i), heros[i])

s = 0
for i in range(1, 1+n):
	s += f(i, i) + f(i, i+1)


### FIXED CODE ###

N = int(input())
A = list(map(int, input().split()))
B = list(map(int, input().split()))

sum_A = sum(A)

for i in range(N):
    if B[i] > A[i]:
        B[i] -= A[i]
        A[i] = 0
        A[i + 1] = max(0, A[i + 1] - B[i])
    else:
        A[i] = max(0, A[i] - B[i])

ans = sum_A - sum(A)
print(ans)
import sys
import math
from collections import defaultdict
def countfact(n,rem):
    if n!=1:
        for i in range(2,int(math.sqrt(n))+2):
            if n%i==0:
                a,b=n//i,i
                #print(a,'fac1',b,'fac2')
                if a!=1:
                    rem.add(a)
                if b!=1:
                    rem.add(b)
def getfact(n):
    ans=[]
    for i in range(2,int(math.sqrt(n))+2):
        if n%i==0:
            a,b=n//i,i
            ans.append(a)
            ans.append(b)
    ans.sort()
    return ans
n=int(sys.stdin.readline())
count=0
temp=n
rem=set()
rem.add(n-1)
vis=defaultdict(int)
countfact(n-1,rem)
for i in rem:
    vis[i]=1

vis[1]=1
l=getfact(n)
temp=n
for i in range(len(l)):
    while n%l[i]==0:
        n=n//l[i]
    if n%l[i]==1 and vis[l[i]]==0:
        #print(l[i])
        vis[l[i]]=1
        count+=1
    n=temp
'''for i in range(2,int(math.sqrt(n))+2):
    if n%i==0:
        a,b=n//i,i
        c=0
        if b>a and vis[a]==0:
            vis[a]=1
            while a%1==0 and b>a:
                
                #print(a,'before')
                if b%a==1:
                    c+=1
                a=math.sqrt(a)
                #print(a,'a')
        elif vis[b]==0:
            vis[b]=1
            while b%1==0 and a>b:
                #print(b,'before')
               
                if a%b==1:
                    c+=1
                b=math.sqrt(b)
                #vis[b]=1
                #print(b,'after')
        count+=c
        #countfact(b-1,rem)'''

#print(count,'count')       
ans=len(rem)+count
if 1 in rem:
    ans-=1
#print(rem,'rem')
#print(ans,'ans')
count,z=1,True
while z:
    a=math.sqrt(n)
    #print(a,'a')
    if a%1==0 and vis[a]==0:
        count+=1
    else:
        z=False
    n=a
print(ans+count)


### FIXED CODE ###

import sys
a,b,c=map(int,sys.stdin.readline().split())
a,b=b,a
a,c=c,a
print(a,b,c)
a,b,c=int(input.split())
if a+b+c>=22:
  print("bust")
else:
  print("win")

### FIXED CODE ###

A=list(map(int,input().split()))
if A[0]+A[1]+A[2]>=22:
  print("bust")
else:
  print("win")
from math import log
x = int(input())
lx = log(x)
ans = 1
for b in range(2, int(b**(1/2))+1):
    h = int(lx/log(b))
    if b**h > ans: ans = b**h
 
print(ans)


### FIXED CODE ###

from math import log
x = int(input())
lx = log(x)
ans = 1
for b in range(2, int(x**(1/2))+1):
    h = b
    while h*b <= x:
        h *= b
    if h > ans: ans = h

print(ans)
n = int(input())
s = input()

cnt = 0
for i in range(1, n-2):
    for i in range(i+1, n-1):
        for k in range(j+1,n)
        if k != j * 2 - i:
            if s[i-1] != s[j-1] and s[i-1] != s[k-1] and s[j-1] != s[k-1]:
                cnt += 1

print(cnt)

### FIXED CODE ###

n, s = int(input()), input()
a = ["R", "G", "B"]
cnt = [0, 0, 0]
for i in s:
    cnt[a.index(i)] += 1
c = cnt[0] * cnt[1] * cnt[2]
for i in range(1, n-1):
    for j in range(i+1, n):
        k = 2 * j - i
        if j-1 < k-1 < n:
            if s[i-1] != s[j-1] and s[j-1] != s[k-1] and s[k-1] != s[i-1]:
                c -= 1

print(c)
import math

r=int(input())
print(r**2*math.pi, 2*r*math.pi)

### FIXED CODE ###

import math
r = float(input())
print(r**2*math.pi, 2*r*math.pi)
n=int(input())
X=[]
Y=[]
A=[]
 for i in range(n):
  A=int(input())
  x=[]
  y=[]
  for j in range(A[i]):
    x,y=[int(s) for s in input().split()]
  X.append(x)
  Y.append(y)
  
c=0
#for i in range(n):
 # l=[1]*n
  #for j in range(i, n-i):
   # if l[j]==0:continue
    #for k in range(A[j]):
   # 　　l[X[j][k]] *= Y[j][k]
#if c<l.count(1):
 # c=l.count(1) 
  
        
  
print(c)  
   

### FIXED CODE ###

n=int(input())
X=[]
Y=[]
A=[0]*n
for i in range(n):
  A[i]=int(input())
  a=A[i]
  x=[0]*a
  y=[0]*a
  for j in range(a):
    x[j],y[j]=[int(s) for s in input().split()]
  X.append(x)
  Y.append(y)
  
s=0
for i in range(2**n):
  c=0
  d=0
  B=[0]*n
  for j in range(n):
    if((i >> j) & 1):
      c=c+1
      B[j]=1
  for k in range(n):
    if B[k]==1:
      for j in range(A[k]):
        if Y[k][j]!=B[X[k][j]-1]:
          d=-1
          break
    if d<0:
      break
  if s<c and d==0:
    s=c
      
      
print(s)
S = input()
res = "Yes"
for x in range(int(len(S)/2)+1):
  if S[2*x] not in ["R","U","D"]:
    res = "No"
  if 2*x + 1 < len(S):
    if S[2*x+1] not in ["L","U","D"]:
      res = "No"
print(res)

### FIXED CODE ###

S = input()
res = "Yes"
for x in range(int(len(S)/2)+1):
  if 2*x < len(S):
    if S[2*x] not in ["R","U","D"]:
      res = "No"
  if 2*x + 1 < len(S):
    if S[2*x+1] not in ["L","U","D"]:
      res = "No"
print(res)
n=int(input())
s=list(input())
k=int(input())
ans=''
for i in range(n):
    if s[i]==s[k]:
        ans+=s[i]
    else:
        ans+='*'
print(ans)

### FIXED CODE ###

n=int(input())
s=list(input())
k=int(input())
ans=''
for i in range(n):
    if s[i]!=s[k-1]:
        ans+='*'
    else:
        ans+=s[i]
print(ans)
a,b,c=map(int,input().split())

if a=b or b=c or c=a and not a=b=c:
  print("Yes")
else:
  print("No")

### FIXED CODE ###

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

if not a==b==c:
  if a==b or b==c or c==a:
  	print("Yes")
  else:
    print("No")
else:
  print("No")
a,b = map(int,input().split())
ans = 0
for i in range(N):
  if a>=b:
    ans += a
    a -= 1
  else:
    ans += b
    b -= 1
print(ans)

### FIXED CODE ###

a,b = map(int,input().split())
ans = 0
for i in range(2):
  if a>=b:
    ans += a
    a -= 1
  else:
    ans += b
    b -= 1
print(ans)
std_n = int(input())
std_tuple = tuple(map(int, input().split()))
std_set = set(std_tuple)

if std_set == {0}:
    print("Yes")
elif len(std_set) == 2:
    if 0 in std_set:
        if std_tuple.count(0) * 3 == std_n:
            print("Yes")
        else:
            print("No")
    else:
        print("No")
elif len(std_set) == 3:
    a, b, c = tuple(std_set)
    if std_tuple.count(a) == std_tuple.count(b) == std_tuple.count(c):
        if int(str(int(format(a, "b")) ^ int(format(b, "b"))), 2) == c:
            print("Yes")
        else:
            print("No")
    else:
        print("No")
else:
    print("No")


### FIXED CODE ###

std_n = int(input())
std_list = tuple(map(int, input().split()))
std_set = set(std_list)

if std_set == {0}:
    print("Yes")
    exit()
elif len(std_set) == 2:
    if 0 in std_set:
        if std_list.count(0) * 3 == std_n:
            print("Yes")
            exit()
        else:
            print("No")
            exit()
    else:
        print("No")
        exit()
elif len(std_set) == 3:
    a, b, c = tuple(std_set)
    if (std_list.count(a) == std_list.count(b)) and (std_list.count(b) == std_list.count(c)):
        if a ^ b == c:
            print("Yes")
            exit()
        else:
            print("No")
            exit()
    else:
        print("No")
        exit()
else:
    print("No")
    exit()

############


n = int(input())
nums = list(map(int, input().split()))

unq = list(set(nums))


def answer(ans):
    print(ans)
    exit()


if len(unq) > 3:
    answer("No")

if len(unq) == 3:
    a, b, c = unq
    if a ^ b ^ c != 0:
        answer("No")
    if nums.count(a) == nums.count(b) == nums.count(c):
        answer("Yes")
    else:
        answer("No")

if len(unq) == 2:
    a, b = sorted(unq)
    if a != 0:
        answer("No")
    if nums.count(a) * 2 == nums.count(b):
        answer("Yes")
    else:
        answer("No")

if len(unq) == 1:
    a = unq[0]
    if a != 0:
        answer("No")
    else:
        answer("Yes")
a, b, h, m = map(int, input().split())

hangle = 360*(h/12+m/(60*12))
mangle = 360*m/60
hm = math.radians(abs(hangle-mangle))

ans = math.sqrt(a**2+b**2-2*a*b*math.cos(hm))

print(ans)

### FIXED CODE ###

import math
a, b, h, m = map(int, input().split())
     
mr = 6*m
hr = 360*(h/12+m/720)
r = math.radians(abs(mr-hr))
ans = math.sqrt((a**2)+(b**2)-2*a*b*math.cos(r))
print(ans)
N = input()
A = input()
print(int(N)-2)

### FIXED CODE ###

x = int(input())

if x < 1200:
    print("ABC")
else:
    print("ARC")
A, B = map(int, input().split())
for K in range(10 ** 9):
    if abs(A - K) == abc(B - K):
        print(K)
    else:
        print("IMPOSSIBLE")

### FIXED CODE ###

A, B = map(int, input().split())
if (A + B) % 2 != 0:
    print("IMPOSSIBLE")
else:
    print((A + B) // 2)
def abc144c():
  n,k=map(int,input().split())
  a=list(map(int,input().split()))
  f=list(map(int,input().split()))
  a.sort(reverse=True);f.sort()

  from heapq import *
  q=[]
  for i,j in zip(a,f):
    heappush(q,(-i*j,str(j)))
  for i in range(k):
    temp,key=heappop(q)
    heappush(q,(temp+int(key),key))
  ans,key=heappop(q)
  print(-ans)

abc144c()

### FIXED CODE ###

n,k=map(int,input().split())
abilities=sorted(list(map(int,input().split())))
foods=sorted(list(map(int,input().split())),reverse=True)

if sum(abilities)<=k:
  print(0)
  exit()
  
def check(score):
  ret=0
  for a,f in zip(abilities,foods):
    ret+=max(0,(a*f-score+f-1)//f)
  return ret<=k

ok=10**12+1
ng=0
for _ in range(50):
  mid=(ok+ng)//2
  if check(mid):
    ok=mid
  else:
    ng=mid
print(ok)
aa

### FIXED CODE ###

n = int(input())
if n&1==0:
    print((n//2)**2)
else:
    print((n//2)*(n//2+1))
k = int(input())
s = input()

if s <= k 
print(s)

if s >= k
print(s[:k]+'...')

### FIXED CODE ###

k = int(input())
s = input()
n = len(s)
     
if n <= k:
	print(s)
else:
	print(s[:k] + '...')
from heapq import heapify, heappop

N, K = map(int, input().split())
v = list(map(int, input().split()))

slice_L = [v[:i] for i in range(N + 1)]
sum_L = [0]
for vv in v:
    sum_L.append(sum_L[-1] + vv)

v.reverse()
slice_R = [v[:i] for i in range(N + 1)]
sum_R = [0]
for vv in v:
    sum_R.append(sum_R[-1] + vv)

ans = 0
for pick in range(K, 0, -1):
    put = K - pick
    if pick < put: break
    for left in range(pick + 1):
        m_put = put
        right = pick - left
        t = sum_L[left] + sum_R[right]
        q = slice_L[left] + slice_R[right]
        heapify(q)
        while m_put > 0:
            t -= heappop(q)
            m_put -= 1
        ans = max(ans, t)
print(ans)


### FIXED CODE ###

from heapq import heapify, heappop

N, K = map(int, input().split())
vl = list(map(int, input().split()))
vr = list(reversed(vl))
sum_L = [0]
for vv in vl:
    sum_L.append(sum_L[-1] + vv)

sum_R = [0]
for vv in vr:
    sum_R.append(sum_R[-1] + vv)

ans = 0
for pick in range(min(K, N) + 1):
    for to_remove in range(K + 1):
        if pick + to_remove > K: break
        for left in range(pick + 1):
            right = pick - left

            t = sum_L[left] + sum_R[right]

            q = vl[:left] + vr[:right]
            heapify(q)

            cnt = 0
            while cnt < to_remove and q:
                t -= heappop(q)
                cnt += 1
            ans = max(ans, t)
print(ans)
import sys
import datetime

lines = sys.stdin.readlines()
X = lines[0]

d = datetime.datetime.strptime(X, '%Y/%m/%d')

if d > datetime.datetime(2019,4,30):
  print('TBD')
else:
  print('Heisei')


### FIXED CODE ###

import sys

lines = sys.stdin.readlines()
S = lines[0]

Ss = S.split('/')

if int(Ss[0]) >= 2019:
  if int(Ss[1]) >= 5:
    print('TBD')
    exit(0)
print('Heisei')
D = int(input())
if D = 25:
	print("Christmas")
elif D = 24:
	print("Christmas Eve")
elif D = 23:
	print("Christmas Eve Eve")
else:
	print("Christmas Eve Eve Eve")

### FIXED CODE ###

D = int(input())
if D == 25:
	print("Christmas")
elif D == 24:
	print("Christmas Eve")
elif D == 23:
	print("Christmas Eve Eve")
else:
	print("Christmas Eve Eve Eve")
input_line = input()
input_line_cubic = input_line ** 3
print input_line_cubic + "\n"

### FIXED CODE ###

input_line = input()
input_line_cubic = input_line ** 3
print input_line_cubic