Harryxun/stf_run huggingface dataset:
a,b = map(int,input())
ans = 0
if b % a != 0:
  ans += 1
ans += b // a
print(ans)

### FIXED CODE ###

a,b = map(int,input().split())
ans = 0
while True:
  n = ans * a -(ans - 1)
  if n >= b:
    break
  ans += 1

print(ans)
import math


def func(a, b, div):
    if (a/div).is_integer(): c_1 = int(a/div)
    else: c_1 = a // div + 1
    c_2 = b // div
    return int(c_2 - c_1 + 1)


a, b, c, d = (int(x) for x in input().split())
print(int((b - a + 1) - func(a, b, c) - func(a, b, d) + func(a, b, c*d//math.gcd(c, d))))

### FIXED CODE ###

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

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

b_num = B//C + B//D - B//lcm(C, D)
a_num = (A-1)//C + (A-1)//D - (A-1)//lcm(C, D)
print((B-(A-1))-(b_num-a_num))
H = list(map(int, input().split()))
A = list(map(int, input().split()))
for i in range(H[1]):
    H[0]= H[0] -A[i]
if H[0] =< 0:
    print('Yes')
else:
    print('No')

### FIXED CODE ###

H = list(map(int, input().split()))
A = list(map(int, input().split()))
for i in range(H[1]):
    H[0]= H[0] -A[i]
if H[0] <= 0:
    print('Yes')
else:
    print('No')
D = int(input())

if D==25:
    print('Christmas')
elif D==24:
    print('Christmas Eve')
elif D==23:
    print('Christmas Eve Eve')
ellif D==22:
    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')
elif D==22:
    print('Christmas Eve Eve Eve')
N = int(input())
x = input()
#print(int(x,2))

def popcount(X,ones,count): 
 
    if ones==0:
        return count
    else:
      
        X=X%ones
        
        count+=1
 
        ones=str(bin(X)).count("1")
        
        return popcount(X,ones,count)
 
GroundOnes=x.count("1")
GroundX=int(x,2)
 
CaseOne= GroundX%(GroundOnes-1)
CaseZero= GroundX%(GroundOnes+1)

TwoPowerCaseOne=[]
TwoPowerCaseZero=[]

for j in range(N):
  TwoPowerCaseOne.append(2**(N-j-1) % (GroundOnes-1))
  TwoPowerCaseZero.append(2**(N-j-1) % (GroundOnes+1))
  
for i in range(N):
    
    #CaseOne
    if x[i]=="1":
        ones=GroundOnes-1
        X=CaseOne+TwoPowerCaseOne[i]
        
    #CaseZero
    else:
        ones=GroundOnes+1
        X=CaseZero+TwoPowerCaseZero[i]
            
 
    # print("for loop",i)
    # print("ones",ones)
    # print("new2bit",new2bit)
    # print(" ------ return --- ",popcount(X,ones,0))
    print(popcount(X,ones,0))

### FIXED CODE ###

N=int(input())
x=input()
def popcount(X,ones,count): 
    #print(count,bin(X),X,ones)
    if ones==0:
        return count
    else:
      
        X=X%ones
        
        count+=1
 
        ones=str(bin(X)).count("1")
        
        return popcount(X,ones,count)
 

    
GroundOnes=x.count("1")
GroundX=int(x,2)

if GroundOnes>1:
    CaseOne= GroundX%(GroundOnes-1)
else:
    CaseOne=2

CaseZero= GroundX%(GroundOnes+1)

TwoPowerCaseOne=[]
TwoPowerCaseZero=[]

# if GroundOnes>1:
#     for j in range(N):
#       TwoPowerCaseOne.append(pow(2,(N-j-1) , (GroundOnes-1)))
#       TwoPowerCaseZero.append(pow(2**(N-j-1), (GroundOnes+1)))
# else:
#     for j in range(N):
#       TwoPowerCaseZero.append(pow(2**(N-j-1), (GroundOnes+1)))
  
    
for i in range(N):
    
    #CaseOne
    if x[i]=="1":
        ones=GroundOnes-1
        if ones>0:
            X=CaseOne-pow(2,N-i-1,ones)
        else:
            X=0
    #CaseZero
    else:
        ones=GroundOnes+1
        X=CaseZero+pow(2,N-i-1,ones)
            
 
    # print("for loop",i)
    # print("ones",ones)
    # print("new2bit",new2bit)
    #print(" ------ return --- ",popcount(X,ones,0))
    print(popcount(X,ones,0))
while True:
	try:
		x,y=map(int,input().split())
		print(int(math.log10(x+y))+1)
	except EOFError:
		break

### FIXED CODE ###

import math
while True:
	try:
		x,y=map(int,input().split())
		print(int(math.log10(x+y))+1)
	except EOFError:
		break
import math
n=int(input())
xli=list(map(float,input().split())
yli=list(map(float,input().split())
a=0
b=0
c=0
d=0
 
for x,y in zip(xli,yli):
    base = math.fabs(x-y)
    a += base
    b += base**2
    c += base**3
    if d < base : d = base
 
print(a)
print(b**(1/2))
print(c**(1/3))
print(d)

### FIXED CODE ###

import math
n=int(input())
xli=list(map(float,input().split()))
yli=list(map(float,input().split()))
a=0
b=0
c=0
d=0
 
for x,y in zip(xli,yli):
    base = math.fabs(x-y)
    a += base
    b += base**2
    c += base**3
    if d < base : d = base
 
print(a)
print(b**(1/2))
print(c**(1/3))
print(d)
N = int(input())
S = input()
list_S = list(S)
N1 = 0
X = list_S.count('.')
for N in list_S:
    if list_S[N1] == '.':
            N1 +=1
    else:
        list_S1 = list_S[N1:]
        X1 = list_S1.count('#')
        X2 = list_S1.count('.')
        break

if X1 > X2:
    print(X2)
else:
    print(X1)

### FIXED CODE ###

N = int(input())
S = input()                                                      
list_S = list(S)
N1 = 0
list_X =[]
X = list_S.count('.')
list_X.append(X)
    
for color in list_S:
    if list_S[N1] == '.':
        X -= 1
        list_X.append(X)
        N1 +=1
    else:
        X += 1
        list_X.append(X)
        N1 +=1

X = list_S.count('#') 
list_X.append(X)

X_MIN = min(list_X)
print(X_MIN)
A, B, C = map(int, input().split())
n = min(B / A, C)
print n

### FIXED CODE ###

A, B, C = map(int, input().split())
print(min(B // A, C))
import sys

n=int(input())
x=input()

if n==1:
    if x=="0":
        print(1)
    else:
        print(0)
    sys.exit()


lis=[0,1]

for i in range(2,n+1):
    ni=i
    cnti=0
    while ni!=0:
        if ni%2==1:
            cnti+=1
        ni=ni//2
    lis.append(lis[i%cnti]+1)

cnt=0
for i in range(len(x)):
    if x[i]=="1":
        cnt+=1

cpls=cnt+1
cmns=cnt-1

cplis=[1]
if cpls!=0:
    for i in range(n):
        cplis.append((cplis[i]*2)%cpls)
cmlis=[1]
if cmns!=0:
    for i in range(n):
        cmlis.append((cmlis[i]*2)%cmns)

cpsum=0
cmsum=0
for i in range(n):
    if x[i]=="1":
        cpsum=(cpsum+cplis[n-1-i])%cpls
        cmsum=(cmsum+cmlis[n-1-i])%cmns

for i in range(n):
    if x[i]=="0":
        Xi=(cpsum+cplis[n-1-i])%cpls
        print(lis[Xi]+1)
    else:
        if cmns==0:
            print(0)
        else:
            Xi=(cmsum-cmlis[n-1-i])%cmns
            print(lis[Xi]+1)

### FIXED CODE ###

import sys

n=int(input())
x=input()

if n==1:
    if x=="0":
        print(1)
    else:
        print(0)
    sys.exit()


lis=[0,1]

for i in range(2,n+1):
    ni=i
    cnti=0
    while ni!=0:
        if ni%2==1:
            cnti+=1
        ni=ni//2
    lis.append(lis[i%cnti]+1)

cnt=0
for i in range(len(x)):
    if x[i]=="1":
        cnt+=1

cpls=cnt+1
cmns=cnt-1

cplis=[1]
if cpls!=0:
    for i in range(n):
        cplis.append((cplis[i]*2)%cpls)
cmlis=[1]
if cmns!=0:
    for i in range(n):
        cmlis.append((cmlis[i]*2)%cmns)

cpsum=0
cmsum=0
for i in range(n):
    if x[i]=="1":
        cpsum=(cpsum+cplis[n-1-i])%cpls
        if cmns!=0:
            cmsum=(cmsum+cmlis[n-1-i])%cmns

for i in range(n):
    if x[i]=="0":
        Xi=(cpsum+cplis[n-1-i])%cpls
        print(lis[Xi]+1)
    else:
        if cmns==0:
            print(0)
        else:
            Xi=(cmsum-cmlis[n-1-i])%cmns
            print(lis[Xi]+1)
i = 1
while(1):
  x = raw_input()
  if x == 0:
    break
  print "Case %d: %d" %(i,x)
  i += 1

### FIXED CODE ###

i = 1
while(1):
  x = int(raw_input())

  if x == 0:
    break

  print "Case %d: %d" %(i,x)
  i += 1
n=int(input())
b=list(map(int,input().split()))
x=sum(b)+b[0]
y=0
for i in range(0,n-1):
  if b[i]>b[i+1]:
    y+=(b[i+1]-b[i])
print(x+y)

### FIXED CODE ###

n=int(input())
b=list(map(int,input().split()))
x=sum(b)+b[0]
y=0
for i in range(0,n-2):
  if b[i]>b[i+1]:
    y+=(b[i+1]-b[i])
print(x+y)
n = input()
data = [a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z]
for i in range(0,len(data)-1):
  if data[i]  == n:
    print(data[i+1])
    

### FIXED CODE ###

n = input()
data = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
for i in range(0,len(data)-1):
  if data[i]  == n:
    print(data[i+1])
S = list(input().split(''))
T = list(input().split(''))
cnt = 0
for s,t in S,T:
  if s != t:
    cnt++
print(cnt)

### FIXED CODE ###

S = list(input())
T = list(input())
cnt = 0
for t in range(0,int(len(S))):
  if S[t] != T[t]:
    cnt += 1
print(cnt)
N, M = map(int, input().split())
X = list(map(int, input().split()))
X.sort()
X_sub = []
for i in range(len(X)-1):
    X_sub.append(X[i+1]-X[i])
X_sub.sort()
for i in range(N-1):
    del X_sub[-1]
print(X_sub)
print(sum(X_sub))

### FIXED CODE ###

N, M = map(int, input().split())
X = list(map(int, input().split()))
if N >=  M:
    print(0)
else:
    X.sort()
    X_sub = []
    for i in range(len(X)-1):
        X_sub.append(X[i+1]-X[i])
    X_sub.sort()
    for i in range(N-1):
        del X_sub[-1]
    print(sum(X_sub))
a, b, c = map(int, input().split())
k = int(input())

for i in range(k-1):
  if b < a:
    b = b * 2
  elif c < b:
    c = c * 2
  else:
    pass

if (a < b) & (b < c):
    print('Yes')
else:
    print('No')

### FIXED CODE ###

i = int(input())
if 400 <= i < 600:
    print(8)
elif 600 <= i < 800:
    print(7)
elif 800 <= i < 1000:
    print(6)
elif 1000 <= i < 1200:
    print(5)
elif 1200 <= i < 1400:
    print(4)
elif 1400 <= i < 1600:
    print(3)
elif 1600 <= i < 1800:
    print(2)
elif 1800 <= i <= 1999:
    print(1)
n = int(input())
r = ((r//2) + (r%2))  / n
print(r)

### FIXED CODE ###

n = int(input())
r = ((n//2) + (n%2))  / n
print(r)
a, b, c = map(int, imput().split())

if c > a-b:
    ans = c-a+b
else:
    ans = 0

### FIXED CODE ###

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

if c > a-b:
    ans = c-a+b
else:
    ans = 0
print(ans)
n,w=map(int,input().split())


wv=[list(map(int, input().split())) for i in range(n)]
dp=[[0]*(w+1) for _ in range(n)]


for i in range(n):
    for j in range(w+1):
        if i==0:
            if j>=wv[i][0]:
                dp[i][j]=wv[i][1]
        else:
            if j< wv[i][0]:
                dp[i][j]=dp[i-1][j]
            else:
                dp[i][j]=max(dp[i-1][j],dp[i-1][j-wv[i][0]]+wv[i][1])



print(max(dp[n-1][w]))


### FIXED CODE ###

n,w=map(int,input().split())


wv=[list(map(int, input().split())) for i in range(n)]
dp=[[0]*(w+1) for _ in range(n)]


for i in range(n):
    for j in range(w+1):
        if i==0:
            if j>=wv[i][0]:
                dp[i][j]=wv[i][1]
        else:
            if j< wv[i][0]:
                dp[i][j]=dp[i-1][j]
            else:
                dp[i][j]=max(dp[i-1][j],dp[i-1][j-wv[i][0]]+wv[i][1])



print(dp[n-1][w])
d, x = map(int, input().split())
l = list(map(int, input().split()))

l_d = []
d = 0
i = 0
while d <= x:
    l_d.append(d)
    d = d + l[i]
    i += 1
print(len(l_d))

### FIXED CODE ###

n, x = map(int, input().split())
l = list(map(int, input().split()))
d = 0
c = 1
for i in l:
    d += i
    if d <= x:
        c += 1
    else:
        break
print(c)
N,M=map(int,input().split())
N=[[0,0]]*(N+1)
L=list(list(map(str,input().split())) for j in range(M))
win=0
peanalty=0
if M==0:
  print(0,0)
else:
  for i in range(M):
    m=int(L[i][0])
    eff=L[i][1]
    if eff=="WA":
      if N[m][0]!=1:
        N[m][1]+=1
      else:
        continue
    else:
      if N[m][0]!=1:
        N[m][0]=1
        win+=1
        penalty+=N[m][1]
      else:
        continue
  print(win,penalty)
      


### FIXED CODE ###

n,m=map(int,input().split())
ps=[list(input().split()) for i in range(m)]
pen=[0]*n
rig=[0]*n

for i in range(m):
  if ps[i][1] == "AC":
    rig[int(ps[i][0])-1]=1
  else:
    if rig[int(ps[i][0])-1] == 0:
      pen[int(ps[i][0])-1]+=1

cnt1,cnt2=0,0
for i in range(n):
  if rig[i]==1:
    cnt1+=rig[i]
    cnt2+=pen[i]
    
print(str(cnt1)+" "+str(cnt2))
a,b=input(int,input().split())
if a<=9 and b<=9:
  print(str(a*b))
else:
  print(-1)

### FIXED CODE ###

a,b=map(int,input().split())
if a<=9 and b<=9:
  print(a*b)
else:
  print(-1)
import numpy as np

N = int(input())
upper = tuple(map(int,input().split()))
lower = tuple(map(int,input().split()))
upper_sum = np.cumsum(upper)
lower_sum = np.cumsum(np.flip(lower, 0))

s = np.zeros((N,), dtype=np.int32)

for i in range(N):
    s[i] = lower_sum[-1-i] + upper_sum[i]
print(np.max(s))



### FIXED CODE ###

import numpy as np

N = int(input())
upper = tuple(map(int, input().split()))
lower = tuple(map(int, input().split()))
upper_sum = np.cumsum(upper)
lower_sum = np.cumsum(np.flipud(lower))

s = np.zeros((N,), dtype=np.int32)

for i in range(N):
    s[i] = lower_sum[-1 - i] + upper_sum[i]
print(np.max(s))
N=int(input())
A=list(map(int,input().split()))
ans_list=[]
if len(A)%2==1:
    for i in range(len(A)-1):
        m=min(A)
        M=max(A)
        A.remove(m)
        A.remove(M)
        if i%2==0:
            ans_list.append([m,M])
            A.append(m-M)
        else:
            ans_list.append([M,m])
            A.append(M-m)
else:
    for i in range(len(A)-1):
        m=min(A)
        M=max(A)
        ans_list.append([])
        A.remove(m)
        A.remove(M)
        if i%2==0:
            ans_list.append([M,m])
            A.append(M-m)
        else:
            ans_list.append([m,M])
            A.append(m-M)

print(A[0])
for i in range(N-1):
    print(ans_list[i][0],ans_list[i][1])

### FIXED CODE ###

def main():
    n = int(input())
    a = list(map(int, input().split()))
    plus = []
    minus = []
    for i in a:
        if i > 0:
            plus.append(i)
        elif i < 0:
            minus.append(i)
        else:
            if len(minus) == 0:
                minus.append(i)
            else:
                plus.append(i)
    plus.sort(reverse=True)
    minus.sort()
    if len(minus) == 0:
        minus.append(plus.pop())
    elif len(plus) == 0:
        plus.append(minus.pop())
    print(sum(plus)-sum(minus))
    now = minus[-1]
    for i in range(len(plus) - 1):
        print(now, plus[i])
        now -= plus[i]
    print(plus[-1], now)
    now = plus[-1] - now
    for i in range(len(minus) - 1):
        print(now, minus[i])
        now -= minus[i]
main()
for i in range(3000):
    x,y=[int(s) for s in input().split()]
    if x>y:
        print("{0} {1}".format(y,x))
    elif x<=y:
        print("{0} {1}".format(x,y))
    elif x==0 and y==0:
        break

### FIXED CODE ###

for i in range(3000):
    x,y=[int(s) for s in input().split()]
    if x==0 and y==0:
        break
    elif x<=y:
        print("{0} {1}".format(x,y))
    else :
        print("{0} {1}".format(y,x))
# -*- coding: utf-8 -*-

x = 700 + 100 * s.count('o')
print(x)

### FIXED CODE ###

# -*- coding: utf-8 -*-
s = input()
a = s.count('o')
y = 700 + 100 * a
print(y)
# 入力
A = int(input())
op = input()
B = int(input())

if op == '+':
    print(A + B)
elif op == '-':
    print(A - B)



### FIXED CODE ###

# 入力
A, op, B = input().split()

A = int(A)
B = int(B)

# 出力
if op == '+':
    print(A + B)
elif op == '-':
    print(A - B)
S_input = input()
S_ans = S_input % 60
M = int(S_input / 60)
M_ans = M % 60
H_ans = int(M / 60)
print ("%d:%d:%d"%(H_ans, M_ans, S_ans))

### FIXED CODE ###

S_input = input()
S_ans = S_input % 60
M = int(S_input / 60)
M_ans = M % 60
H_ans = int(M / 60)
print "%d:%d:%d"%(H_ans, M_ans, S_ans)
a, b, c = [int(i) for i in input().split())

total = 0 
for d in range(a, b + 1): 
    if c % d == 0:
        total += 1

print(total)

### FIXED CODE ###

a, b, c = [int(i) for i in input().split()]
 
total = 0
for d in range(a, b + 1):
    if c % d == 0:
        total += 1
 
print(total)
for i in range(1,10001):
    line = input()
    if line == "0":
        break
    else:
        print('Case %d: %s', %(i, line))


### FIXED CODE ###

#
# 3b
#

def main():
    i = 1
    while True:
        x = int(input())
        if x == 0:
            break
        print(f"Case {i}: {x}")
        i += 1


if __name__ == '__main__':
    main()
a=[]
b=[]
ori=[]
ans=0
for i in range(5):
  c=int(input())
  ori.append(c)
  a.append((c//10+1)*10)
  
  if c%10==0:
    b.append(100)
  else:
    b.append(c%10)
a.pop(b.index(min(b)))
print(ori[b.index(min(b))]+a.sum())

### FIXED CODE ###

a=[]
b=[]
ori=[]
ans=0
for i in range(5):
  c=int(input())
  ori.append(c)
  if c%10!=0:
    a.append((c//10+1)*10)
  else:
    a.append(c)
  
  if c%10==0:
    b.append(100)
  else:
    b.append(c%10)
a.pop(b.index(min(b)))
print(ori[b.index(min(b))]+sum(a))
import sys
input = lambda : sys.stdin.readline().rstrip()
sys.setrecursionlimit(max(1000, 10**9))
write = lambda x: sys.stdout.write(x+"\n")


n = int(input())
ab = [None]*n
cd = [None]*n
for i in range(n):
    ab[i] = tuple(map(int, input().split()))
for i in range(n):
    cd[i] = tuple(map(int, input().split()))
import networkx as nx
g = nx.DiGraph()
for i in range(2*n+2):
    g.add_node(i)
s = 2*n
t = 2*n+1
for i in range(n):
    g.add_edge(s,i, capacity=1)
for i in range(n, 2*n):
    g.add_edge(i, t, capacity=1)
for i in range(n):
    for j in range(n, 2*n):
        if ab[i][0]<cd[j-n][0] and ab[i][1]<cd[j-n][1]:
            g.add_edge(i,j, capacity=1)
val = nx.maximum_flow(g, s, t)
print(val[0])

### FIXED CODE ###

import sys
input = lambda : sys.stdin.readline().rstrip()
sys.setrecursionlimit(max(1000, 10**9))
write = lambda x: sys.stdout.write(x+"\n")


n = int(input())
ab = [None]*n
cd = [None]*n
for i in range(n):
    ab[i] = tuple(map(int, input().split()))
for i in range(n):
    cd[i] = tuple(map(int, input().split()))
import networkx as nx
g = nx.DiGraph()
for i in range(2*n+2):
    g.add_node(i)
s = 2*n
t = 2*n+1
for i in range(n):
    g.add_edge(s,i, capacity=1)
for i in range(n, 2*n):
    g.add_edge(i, t, capacity=1)
for i in range(n):
    for j in range(n, 2*n):
        if ab[i][0]<cd[j-n][0] and ab[i][1]<cd[j-n][1]:
            g.add_edge(i,j, capacity=1)
val = nx.maximum_flow(g, s, t)
print(val[0])
n=int(input())
a=list(map(int,input().split()))
ct=0
list=[]

if n==1:print(0)
else:
  for g in range(50):
    list.append(2**g)
  
  M=max(a)
  
  if M>=10**7:
    while M>=10**7:
      for h in range(len(a)):
        if M<10**7:
          break
        elif M+a[h] in list:
          ct+=1
          a.remove(M)
          a.remove(a[h])
          break
        else:
          a.remove(M)
        M=max(a)
        
  
  
  
  for i in range(50):
    if 2**i>M:
      x=i
      break
  L=[]
  for j in range(2**x-1):
    L.append(0)
  
  for j2 in range(len(a)):
    L[a[j2]-1]+=1
  
  for k in range(x,1,-1):
    l1=L[0:2**(k-1)-1]
    l2=L[2**(k-1):2**k]
    l2.reverse()
    ct+=int(L[2**(k-1)-1]/2)
    for m in range(len(l1)):
      if l1[m]>=1 and l2[m]>=1:
        ct+=min(l1[m],l2[m])
        l1[m]-=min(l1[m],l2[m])
        l2[m]-=min(l1[m],l2[m])
    L=l1
  ct+=int(L[0]/2)
  print(ct)

### FIXED CODE ###

import math
import bisect
n=int(input())
a=list(map(int,input().split()))
a.sort()
b=[]
for i in range(1,50):
  b.append(2**i)
ct=0
check=[1]*n
for i in range(n-1,-1,-1):
  if a[i]==1:
    break
  if check[i]==1 and a[i] not in b:
    check[i]=0
    x=math.floor(math.log2(a[i]))
    x=b[x]-a[i]
    y=bisect.bisect_left(a,x)
    z=bisect.bisect_right(a,x)
    t=bisect.bisect_left(check[y:z],1)+y
    if t!=z:
      check[t]=0
      ct+=1

ctb=0
w=1
for i in range(n):
  if a[i] in b or a[i]==1:
    if a[i]==w:
      if check[i]==1:
        ctb+=1
    else:
      ct+=ctb//2
      w=a[i]
      if check[i]==1:
        ctb=1
      else:
        ctb=0
  else:
    ct+=ctb//2
    ctb=0
ct+=ctb//2

print(ct)
N,H = map(int,input().split())

a = []
b = []
finish = 0

for i in range(1,N+1):
    elem1, elem2 = map(int,input().split())
    a.append(elem1)
    b.append(elem2)

maxB = max(b)
maxA = max(a)
sum = maxB
b.remove(maxB)
count = 1
for elem in b:
    if elem > maxA:
        sum = sum + elem
    #print(sum)
        count += 1
        if sum > H:
            finish = 1
            break


#print(sum)
if finish == 0:
    dev = int(((H - sum)/(maxA))
    count = count + dev
    sum = sum + dev * maxA
    if sum < H:
        count += 1

print(count)


### FIXED CODE ###


N,H = map(int,input().split())

a = []
b = []
finish = 0

for i in range(1,N+1):
    elem1, elem2 = map(int,input().split())
    a.append(elem1)
    b.append(elem2)


b = sorted(b, key=int, reverse=True)

maxB = max(b)
maxA = max(a)
sum = maxB
b.remove(maxB)
count = 1
for elem in b:
    if elem > maxA and sum < H:
        sum = sum + elem
        count += 1
    if sum >= H:
        finish = 1
        break


#print(sum)
if finish == 0:
    dev = int((H - sum)/maxA)
    count = count + dev
    sum = sum + dev * maxA
    if sum < H:
        count += 1

print(count)
from math import gcd
k=int(input())
cnt=0
for i in range(k):
  for p in range(k):
    for q in range(k):
      cnt+=gcd(i,p,q)
      
print(cnt)
  

### FIXED CODE ###

from math import gcd
k=int(input())
cnt=0
for i in range(1,k+1):
  for p in range(1,k+1):
    for q in range(1,k+1):
      gcd1=gcd(i,p)
      
      cnt+=gcd(gcd1,q)

      
print(cnt)
from collections import deque
n, m, k = map(int, input().split())
a = deque(list(map(int, input().split())))
b = deque(list(map(int, input().split())))

time = 0
count = 0
while len(a) > 0 or len(b) > 0:
    if len(a) ==  0:
        time += b.popleft()
        count += 1
    elif len(b) == 0:
        time += a.popleft()
        count+= 1
    elif a[0] > b[0]:
        time += b.popleft()
        count += 1
    elif a[0] == b[0]:
        if a[1] > b[1]:
            time += b.popleft()
        else:
            time += a.popleft()
        count += 1            
    else:
        time += a.popleft()
        count += 1
    if time > k:
        count -= 1
        break

    
print(count)   

    


### FIXED CODE ###

n, m, k = map(int, input().split())
a = list(map(int, input().split()))
b = list(map(int, input().split()))
book_a = [0] * (n + 1)
book_b = [0] * (m + 1)

for i in range(n):
    book_a[i+1] = book_a[i] + a[i]

for j in range(m):
    book_b[j + 1] = book_b[j] + b[j]

r = m
ans = 0

for i in range(n + 1):
    if book_a[i] > k:
        break
    while book_a[i] + book_b[r] > k:
        r -= 1
    ans = max(ans, i + r)

print(ans)
i = input().split()
N = int(i[0])
K = int(i[1])
log = 0

log = math.log(N,K)
if int(log) != log:
  log += 1

print(log)

### FIXED CODE ###

import math
 
i = input().split()
N = int(i[0])
K = int(i[1])
result = 0
 
result = math.log(N, K)
result = 1 + int(result)

 
print(result)
import re
import sys
A,B = map(int,input().split())
S = input()


if S.count("-") == 1:
    s1,s2 = S.split("-")
    result = re.match(f"^[0-9]", s1)

    for x in range(2):
        if x == 1:
            result = re.match(f"^[0-9]", s2)
        if result:
            continue
        else:
            print("No")
            sys.exit(0)

    judgment = s1
    n = A
    for x in range(2):
        if x == 1:
            judgment = s2
            n = B
        if len(judgment) == n:
            continue
        else:
            print("No")
            sys.exit(0)

    print("Yes")
else:
    print("No")


### FIXED CODE ###

import re
A,B = list(map(int,input().split()))
S = input()

d = re.compile("\d+")

if (d.match(S[:A])) and S[A] == "-" and d.match(S[A+1:]):
    print("Yes")

else:print("No")
N,X,T = map(int,input().split())
kaisuu = N//12
if kaisuu*X < N:
    zikan = kaisuu+zikan
else:
    zikan = kaisuu
print(zikan)

### FIXED CODE ###

N,X,T = map(int,input().split())
kaisuu = N//X
if kaisuu*X < N:
    zikan = (kaisuu+1)*T
else:
    zikan = kaisuu*T
print(zikan)
n = int(raw_input())
for i in range(0, n):
	x1,y1,x2,y2,x3,y3,x4,y4 = map(float,raw_input().split())
	z1 = (y1 - y2) / (x1 - x2)
	z2 = (y3 - y4) / (x3 - x4)
	if z1 == z2:
		print "YES"
	else:
		print "NO"

### FIXED CODE ###

n = int(raw_input())
for i in range(0, n):
	x1,y1,x2,y2,x3,y3,x4,y4 = map(float,raw_input().split())
 
	z1 = (x1 - x2) * (y3 - y4)
	z2 = (x3 - x4) * (y1 - y2)
 
	if abs(z1 - z2) < 1e-10:
		print "YES"
	else:
		print "NO"
s=input()
outp=""
for i in range(len(s),2):
    outp+=s[i]
print(outp)

### FIXED CODE ###

s=input()
outp=""
for i in range(0,len(s),2):
    outp+=s[i]
print(outp)