Harryxun/stf_run huggingface dataset:
a,b,c=map(int,input().split())
ans=[0]*b
if c>b-2:
    for i in range(b):
        d=(i+1)*b-1
        ans[i]=int((a*d)/b)-d*(int(d/b))
        if c<d:
            break
else :
    ans[0]=int((a*c)/b)-b*(int(c/b))
print(max(ans))

### FIXED CODE ###


import math
 
def f(A, B, X):
	return math.floor((A*X)/B) - A*math.floor(X/B)
 
A,B,N = map(int,input().split())
 
if N < B:
	print(f(A,B,N))
else:
	print(f(A,B,B-1))
K = input()
S = input()
count = len(S)
list = 0
List = []
for i in range(K):
  print(S[list])
  list = list + 1
if count <= K:
  print(S)
else:
  print( *i +"...")

### FIXED CODE ###

k = int(input())
s = str(input())
if len(s) <= k:
    print(s)
else:
    print((s[:k]) + "...")
S = intput()
n = len(S)
count = 0
for i in range(n // 2):
    if S[i] != S[n - 1 - i]:
        count += 1
print(count)

### FIXED CODE ###

S = input()
n = len(S)
count = 0
for i in range(n // 2):
    if S[i] != S[n - 1 - i]:
        count += 1
print(count)
a,b,c,k = map(int,input().split())
l = [1]*a + [0]*b + [-1]*c
print(sum(l[:k]))

### FIXED CODE ###

a,b,c,k = map(int,input().split())
print(min([a,k])-max([0,k-a-b]))
N,K=map(int,input().split())
P=list(map(int,input().split()))
P=P.sort(reverse=True)
P=P[:K]
ans=0

for p in P:
  ans+=(1+p)/2
print(ans)

### FIXED CODE ###

import sys

N,K=map(int,input().split())
P=list(map(int,input().split()))
Q=[(1+p)/2 for p in P]
temp=sum(Q[:K])
ans=temp
for i in range(N):
  try:
    temp=temp-Q[i]+Q[i+K]
    ans=max(ans,temp)
  except:
    pass
else:
  print(ans)
def is_prime(q):
    q = abs(q)
    if q == 2: return True
    if q < 2 or q&1 == 0: return False
    return pow(2, q-1, q) == 1

n = int(input())

c = []
k=0
for i in range(n):
    
    while(not is_prime(5 * k + 2)):
        k = k + 1
    
    c.append(5 *k + 2)
    k=k+1

print(' '.join(map(str, c)))
    
    

### FIXED CODE ###

n = [list(map(int, input().split())) for i in range(1)]
a = n[0][0]
b = n[0][1]

c = 0
if(a > b):
    c = a - 1
else:
    c = a
    
print(c)
a, b = map(int, input().split())

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

if a > b:
    ans+=a
    a-=1
else:
    ans+=b
    b-=1

print(ans)X

### FIXED CODE ###

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

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

if a > b:
    ans+=a
    a-=1
else:
    ans+=b
    b-=1

print(ans)
a, b, c, d = list(map(int, input().split())
l = a+b
r = c+d
if l > r: print('Left')
elif: l < r: print('Right')
else: print('Balanced')

### FIXED CODE ###

a, b, c, d = list(map(int, input().split()))
l = a+b
r = c+d
if l > r: print('Left')
elif l < r: print('Right')
else: print('Balanced')
N = int(input())
M = int(input())

if M == N:
  print('Yes')
else:
  print('No')

### FIXED CODE ###

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

if m == n:
  print('Yes')
else:
  print('No')
n,k=map(int,input().split())
string = ''
for i in range(n):
    a,b=(input().split())
    string += a*int(b)
string = [int(i) for i in string]
print(sorted(string[k-1]))

### FIXED CODE ###

a = [int(num) for num in input().split()]
print('Yes' if a[0]<=a[2]<=a[1] else 'No')
a,b = int(x) for x in input().split()
if (!b%a):
    print(a+b)
else:
    print(b-a)

### FIXED CODE ###

a, b = (int(x) for x in input().split())
if (b % a):
    print(b-a)
else:
    print(b+a)
from sys import stdin

A = list(map(int,stdin.readline().split()))
B = list(map(int,stdin.readline().split()))
C = [x for x in range(1,101)]
C = set(C)
B = set(B)
C = C.difference(B)
C = list(C)
X=A[0]
N=A[1]
record=max(C)
number=0

for t in C:
    diff=abs(t-X)
    if diff<record:
        record=diff
        number=t
    elif diff==record:
        number=min(number,t)

print(number)

### FIXED CODE ###

from sys import stdin

A = list(map(int,stdin.readline().split()))
B = list(map(int,stdin.readline().split()))
C = [x for x in range(-10,110)]
C = set(C)
B = set(B)
C = C.difference(B)
C = list(C)
X=A[0]
N=A[1]
record=200
number=1000
K=0

if N==0:
    print(X)
    K=1

for t in C:
    diff=abs(t-X)
    if diff<record:
        record=diff
        number=t
    elif diff==record:
        number=min(number,t)

if K==0:
   print(number)
import math

n = int(input())
di = dict()
answer = 0

for i in range(n):
    tmp = str(sorted(input()))
    if di.get(tmp, 0) == 0:
        di[tmp] = 1
    else:
        di[tmp] += 1

for v in di.values():
    if v > 1:
        answer += int(math.factorial(v) / 2)
print(answer)




### FIXED CODE ###

import math

n = int(input())
di = dict()
answer = 0

for i in range(n):
    tmp = str(sorted(input()))
    if di.get(tmp, 0) == 0:
        di[tmp] = 1
    else:
        answer += di[tmp]
        di[tmp] += 1

print(answer)
def main():
    N, K = map(int, input().split())
    X = list(map(int, input().split()))
    P = []
    M = []
    for x in X:
        if x < 0:
            M.append(-1 * x)
        else:
            P.append(x)
    M.reverse()

    if len(P) == 0:
        print(M[K - 1])
        exit()
    elif len(M) == 0:
        print(P[K - 1])
        exit()

    ans = 10 ** 10
    for i, m in enumerate(M, start=1):
        d = None
        if i == K + 1:
            break
        elif i == K:
            d = m
        else:
            p_idx = K - i - 1
            d = m * 2 + P[p_idx]
        if d < ans:
            ans = d

    for i, p in enumerate(P, start=1):
        d = None
        if i == K + 1:
            break
        elif i == K:
            d = p
        else:
            m_idx = K - i - 1
            d = p * 2 + M[m_idx]
        if d < ans:
            ans = d

    print(ans)


if __name__ == '__main__':
    main()


### FIXED CODE ###

def main():
    N, K = map(int, input().split())
    X = list(map(int, input().split()))
    P = []
    M = []
    for x in X:
        if x < 0:
            M.append(-1 * x)
        else:
            P.append(x)
    M.reverse()

    if len(P) == 0:
        print(M[K - 1])
        exit()
    elif len(M) == 0:
        print(P[K - 1])
        exit()

    ans = 10 ** 10
    for i, m in enumerate(M, start=1):
        d = None
        if i == K + 1:
            break
        elif i == K:
            d = m
        else:
            p_idx = K - i - 1
            if p_idx >= len(P):
                continue
            else:
                d = m * 2 + P[p_idx]
        if d < ans:
            ans = d

    for i, p in enumerate(P, start=1):
        d = None
        if i == K + 1:
            break
        elif i == K:
            d = p
        else:
            m_idx = K - i - 1
            if m_idx >= len(M):
                continue
            else:
                d = p * 2 + M[m_idx]
        if d < ans:
            ans = d

    print(ans)


if __name__ == '__main__':
    main()
s = input()

tenki = ["Sunny", "Cloudy", "Rainy"]
i = tenki.index(s)
i = (i%3)+1
print(tenki[i])
       

### FIXED CODE ###

s = input()

if s == "Sunny":
    print("Cloudy")
if s == "Cloudy":
    print("Rainy")
if s == "Rainy":
    print("Sunny")
n = int(input())
s = [int(i) for i in input()]

l = [str(i).zfill(3) for i in range(0,1000)]

ct = 0
for i in l:
  n0 = s.find(a[0])
  if n0==-1:
    continue
  n1 = s.find(a[1], n0+1)
  if n1==-1:
    continue
  n2 = s.find(a[2], n1+1)
  if n2!=-1:
    c += 1
   
print(ct)

### FIXED CODE ###

n = int(input())
s = input()

l = [str(i).zfill(3) for i in range(0,1000)]

ct = 0
for i in l:
  n0 = s.find(i[0])
  if n0==-1:
    continue
  n1 = s.find(i[1], n0+1)
  if n1==-1:
    continue
  n2 = s.find(i[2], n1+1)
  if n2!=-1:
    ct += 1
   
print(ct)
H = input()
A = input()

while Ans =< 0:
	Ans = H-A
	Ans2++

print(Ans)

### FIXED CODE ###

H, A = map(int, input().split())
Ans = 0
 
while (H > 0):
	H -= A
	Ans += 1
 
print(Ans)
l = [0]*100000
n = int(raw_input())
for x in xrange(n):
	a = map(int,raw_input().strip().split())
	for y in xrange(a[0],a[1]+1):
		l[y] = 1
ans = 0
for x in l:
	if x == 1:
		ans += 1
print(ans)

### FIXED CODE ###

l = [0]*100005
n = int(raw_input())
for x in xrange(n):
	a = map(int,raw_input().strip().split())
	for y in xrange(a[0],a[1]+1):
		l[y] = 1
ans = 0
for x in l:
	if x == 1:
		ans += 1
print(ans)
a = input()
b = input()
print(str(a+b/2))

### FIXED CODE ###

a, b = map(int, input().split())
print(int(a+b/2))
n = int(input())
action = []
for i in range(n):
    action.append(list(map(int,input().split())))

@lru_cache(maxsize=1000000)
def dp(i, a):
    if i == 0:
        return action[0][a]
    else:
        return max(dp(i-1, (a+1)%3), dp(i-1, (a+2)%3)) + action[i][a]

import sys
sys.setrecursionlimit(1000000)
print(max([dp(n-1,a) for a in range(3)]))


### FIXED CODE ###

n = int(input())
action = []
for i in range(n):
    action.append(list(map(int,input().split())))

memo = []
for i in range(n):
    memo.append([-1]*3)

def dp(i, a):
    if i == 0:
        return action[0][a]
    elif memo[i][a] != -1:
        return memo[i][a]
    else:
        memo[i][a] = max(dp(i-1, (a+1)%3), dp(i-1, (a+2)%3)) + action[i][a]
        return memo[i][a]

import sys
sys.setrecursionlimit(1000000)
print(max([dp(n-1,a) for a in range(3)]))
# -*- coding: utf-8 -*-
 
if “o” == "S"[:1] :
   x = 1
    
if “o” == "S"[1:2] :
   x = x + 1

if “o” == "S"[2:] :
   x = x + 1

y = 700 + x * 100
 
print str(y)

### FIXED CODE ###

# -*- coding: utf-8 -*-
s = input()
a = s.count('o')
y = 700 + 100 * a
print(y)
N,M = map(int, input().split())

if N == 1 or M == 1:    
    if N+M == 2:
        print(1)
    else:
        print(max(N,M)-2)

elif N == 2 or M == 2:
    print(0)
    
else:
    print(N*M - ((N-2)*2+(M-2)*2+4))

### FIXED CODE ###

a = list(input())
b = list(input())
c = list(input())
print(a[0]+b[1]+c[2])
a = list(map(str, input().split()))
if a[1] == “+”:
 print(int(a[0]) + int(a[2]))
else:
 print(int(a[0]) - int(a[2]))


### FIXED CODE ###

a = list(map(str, input().split()))
if a[1] == "+":
  print(int(a[0]) + int(a[2]))
else:
  print(int(a[0]) - int(a[2]))
X, Y, Z = map(int, input().split())
print(Z X Y)

### FIXED CODE ###

X, Y, Z = input().split()
print(Z + ' ' + X + ' ' + Y)
n=int(input())
if n%9==o:
  print('Yes')
else:
  print('No')

### FIXED CODE ###

n=int(input())
if n%9==0:
  print('Yes')
else:
  print('No')
def getInput():
    return [int(i) for i in input().rstrip().split(' ')]

def swap(x, K):
    return abs(x-K)

def loops (x, K, mins):
    if x < K:
        ab = swap(x, K)
        return min(ab, x)
    elif x % K == 0:
        return 0
    else:
        x = swap(x, K)
        if x == 0:
            return x
        if x < mins:
            mins = x
            x = loops(x, K, mins)
            return x
        else:
            return mins

N, K = getInput()
x = N
print(loops(x, K, x))


### FIXED CODE ###

def getInput():
    return [int(i) for i in input().rstrip().split(' ')]

N, K = getInput()
t = N % K 
print(min(t, K -t))
a, b, c = (int(i) for i in input().split()) 
for i in range(c):
 if(i%2==0):
  a=a//2
  b=b+a//2
 else:
  b=b//2
  a=a+b//2
print(a,b)

### FIXED CODE ###

s=input()
if(len(s)==2):
 print(s)
else:
 print(s[-1::-1])
K = int(input())
A, B = map(int,input().split())
tmp = a % k
if(tmp == 0): 
	print('OK')
else:
	if(A + (K-tmp) <= B):
		print('OK')
	else:
		print('NG')

### FIXED CODE ###

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

tmp = A % K
if(tmp == 0): 
	print('OK')
else:
	if(A + (K-tmp) <= B):
		print('OK')
	else:
		print('NG')
N, i = map(int.input().split(' '))
print(N-i+1)

### FIXED CODE ###

N, i = map(int,input().split(' '))
print(N-i+1)
H,W=map(int,input().split())
G=[input() for i in range(H)]
F=[[0]*W for i in range(H)]

def judge(p0,p1,res):
  if p0==H-1 and p1==W-1:
    return res
  
  a=float("inf")
  if p0<H-1 and F[p0+1][p1]==0 and G[p0+1][p1]==".":
    F[p0+1][p1]=1
    m=judge(p0+1,p1,res+1)
    if m!=False:
      a=min(a,m)
  
  if p1<W-1 and F[p0][p1+1]==0 and G[p0][p1+1]==".":
    F[p0][p1+1]=1
    m=judge(p0,p1+1,res+1)
    if m!=False:
      a=min(a,m)
      
  if p0>0 and F[p0-1][p1]==0 and G[p0-1][p1]==".":
    F[p0-1][p1]=1
    m=judge(p0-1,p1,res+1)
    if m!=False:
      a=min(a,m)
   
  if p1>0 and F[p0][p1-1]==0 and G[p0][p1-1]==".":
    F[p0][p1-1]=1
    m=judge(p0,p1-1,res+1)
    if m!=False:
      a=min(a,m)
    
  if a!=float("inf"):
    return a
    
  return False
k=judge(0,0,0)
if k:
  ans=W*H-(k+1)
  for i in range(H):
    ans-=G[i].count("#")
  print(ans)
else:
  print(-1)

### FIXED CODE ###

from collections import deque
H,W=map(int,input().split())
G=[input() for i in range(H)]

b_n= [G[i].count("#") for i in range(H)]

root_min=float("inf")
root=deque([[0,0,1]])
F=[[0]*W for i in range(H)]
while len(root)!=0:
  p=root.popleft()
  if p[:2]==[H-1,W-1]:
    print(H*W-p[2]-sum(b_n))
    exit()
  F[p[0]][p[1]]=1
  for i in range(4):
    if i==0:
      n=[max(0,p[0]-1),p[1],p[2]+1]
    elif i==1:
      n=[min(H-1,p[0]+1),p[1],p[2]+1]
    elif i==2:
      n=[p[0],max(0,p[1]-1),p[2]+1]
    else:
      n=[p[0],min(W-1,p[1]+1),p[2]+1]
      
    if G[n[0]][n[1]]=="#":
      continue
    if F[n[0]][n[1]]==1:
      continue
    if n in root:
      continue
    root.append(n)
print(-1)
n,m=map(int,input().split())
a=list(map(int,input().split()))
from collections import Counter
c=[0]
for i in a:
    c.append((c[-1]+a)%m)
cc=Counter(c)
ans=0
for i in cc.values():
    ans+=i*(i-1)//2
print(ans)


### FIXED CODE ###

n,m=map(int,input().split())
a=list(map(int,input().split()))
from collections import Counter
c=[0]
for i in a:
    c.append((c[-1]+i)%m)
cc=Counter(c)
ans=0
for i in cc.values():
    ans+=i*(i-1)//2
print(ans)
print(int(input()**2-int(input()))

### FIXED CODE ###

print(int(input())**2-int(input()))
#include<bits/stdc++.h>
#define rep(i, n) for (int i=0; i < n; i++)
typedef long long ll;
using namespace std;

int main()
{
    int n, a, b;
    cin >> n >> a >> b;
    int total = a + b;
    string s; cin >> s;
    int cnt = 0, cntb = 0;
    rep(i,n){
        string ans = "Yes";
        if (s[i] == 'c') {
            ans = "No";
        }
        else if (s[i] == 'a')
        {
            if (cnt < a+b) cnt++;
            else ans = "No";
        }
        else {
            cntb++;
            if (cnt < a+b and cntb <= b) cnt++;
            else ans = "No";
        }
        cout << ans << endl;
    }
}

### FIXED CODE ###

def main():
    import sys
    def input(): return sys.stdin.readline().rstrip()
    n, a, b = map(int, input().split())
    s = input()
    for ch in s:
        ans = 'Yes'
        if ch == 'c':
            ans = 'No'
        elif ch == 'a':
            if a > 0:
                a -=1
            elif b > 0:
                b -= 1
            else:
                ans = 'No'
        else:
            if b > 0:
                b -= 1
            else:
                ans = 'No'
        print(ans)


if __name__ == '__main__':
    main()
X = list(int, input().split())

for i, x in enumerate(X):
    if x == 0:
        print(i + 1)
        break

### FIXED CODE ###

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

for i, x in enumerate(X):
    if x == 0:
        print(i + 1)
        break
def GCD(x,y):
    if y == 0:
        return x
    else:
        return GCD(y,x%y)



N = int(input())
if N == 2:
    print(-1)
    exit()
if N%3 != 0:
    print(1/0)
    exit()
ans = [list("."*N) for i in range(N)]
for i in range((2*N*3//GCD(2*N,3))//6):
    ans[i][N-i*2-1] = 'a'
    ans[i][N-i*2-2] = 'a'
    ans[N-i*2-1][i] = 'a'
    ans[N-i*2-2][i] = 'a'

for i in ans:
    print("".join(i))




### FIXED CODE ###

def GCD(x,y):
    if y == 0:
        return x
    else:
        return GCD(y,x%y)


N = int(input())
if N == 2:
    print(-1)
    exit()
if N == 7:
    ans = [".aaggcc",
           "c..ddee",
           "c..ffgg",
           "hij....",
           "hij....",
           "klm....",
           "klm...."]
    for i in ans:
        print("".join(i))
    exit()
if N == 3:
    print(".aa")
    print("a..")
    print("a..")
    exit()

four = ["aacd",
        "bbcd",
        "efgg",
        "efhh"]
five = ["aabbc",
        "h.iic",
        "hj..d",
        "gj..d",
        "gffee"]
six = ["aacd..",
       "bbcd..",
       "ef..gg",
       "ef..hh",
       "..iikl",
       "..jjkl"]
ans = [list("."*N) for i in range(N)]
a,b,c = [[0,N//5,0],[0,N//5-1,1],[0,N//5-2,2],[2,N//5-1,0],[1,N//5,0]][N%5]
p = 0
for i in range(a):
    for x in range(4):
        for y in range(4):
            ans[p+x][p+y] = four[x][y]
    p += 4

for i in range(b):
    for x in range(5):
        for y in range(5):
            ans[p+x][p+y] = five[x][y]
    p += 5

for i in range(c):
    for x in range(6):
        for y in range(6):
            ans[p+x][p+y] = six[x][y]
    p += 6
for i in ans:
    print("".join(i))
# coding:utf-8


def main():
    A, B, K = map(int, input().split())
    ans = []

    for i in range(1, max(A, B)):
        if A % i == 0 and B % i == 0:
            ans.append(i)
        # if len(ans) >= K:
        #     break
    # print(ans)
    print(ans[-K])


if __name__ == "__main__":
    main()


### FIXED CODE ###

# coding:utf-8


def main():
    A, B, K = map(int, input().split())
    ans = []
    ans.append(1)
    for i in range(2, max(A, B)+1):
        if A % i == 0 and B % i == 0:
            ans.append(i)
        # if len(ans) >= K:
        #     break
    # print(ans)
    print(ans[-K])


if __name__ == "__main__":
    main()
s=input()
k=int(input())

tail = s[0]
plus = 0
if tail == s[-1]:
  tmp_cnt1 = 0
  tmp_cnt2 = 0
  for i in s:
    if tail == i:
      tmp_cnt1 += 1
    else:
      break
  for i in s[::-1]:
    if tail == i:
      tmp_cnt2 += 1
    else:
      break
  if (tmp_cnt1 % 2) == 1 and (tmp_cnt2%2)==1:
    plus = 1

cnt=0
if len(s)==1:
  ret = k
else:
  tmp=s[0]
  tmp_cnt=0
  for i in s[1:]:
    if tmp==i:
      tmp_cnt+=1
    else:
      cnt+=(tmp_cnt+1)//2
      tmp_cnt=0
    tmp=i
  cnt+=(tmp_cnt+1)//2
  ret=cnt*k
  if plus == 1:
    ret += k-1
  if tmp_cnt1 == len(s):
    ret = len(s)*k//2
print(ret)

### FIXED CODE ###

s=input()
k=int(input())

tail = s[0]
plus = 0
flg = False
if tail == s[-1]:
  tmp_cnt1 = 0
  tmp_cnt2 = 0
  for i in s:
    if tail == i:
      tmp_cnt1 += 1
    else:
      break
  for i in s[::-1]:
    if tail == i:
      tmp_cnt2 += 1
    else:
      break
  if (tmp_cnt1 % 2) == 1 and (tmp_cnt2%2)==1:
    plus = 1
  if tmp_cnt1 == len(s):
    flg = True

cnt=0
if len(s)==1:
  ret = k//2
else:
  tmp=s[0]
  tmp_cnt=0
  for i in s[1:]:
    if tmp==i:
      tmp_cnt+=1
    else:
      cnt+=(tmp_cnt+1)//2
      tmp_cnt=0
    tmp=i
  cnt+=(tmp_cnt+1)//2
  ret=cnt*k
  if plus == 1:
    ret += k-1
  if flg:
    ret = len(s)*k//2
print(ret)
import sys

X = int(sys.stdin.readline())
ans = 0
for i in range(X+1):
  	for j in range(11):
      	tmp = pow(i, j)
        if tmp <= X:
          	ans = max(ans, tmp)
print(ans)

### FIXED CODE ###

import sys
 
X = int(sys.stdin.readline())
ans = 0
for i in range(X+1):
    for j in range(2, 11):
        tmp = pow(i, j)
        if tmp <= X:
            ans = max(ans, tmp)
print(ans)
def gcd (a,b): 
  return b 
if a == 0 else gcd (b%a , a) 
  num = [int (x) for x in input().split(" ")] print (int(num[0]*num[1]/gcd(num[0],num[1])))

### FIXED CODE ###

def gcd (a,b): 
  return b if a == 0 else gcd (b%a , a) 
num = [int (x) for x in input().split(" ")]
print (int(num[0]*num[1]/gcd(num[0],num[1])))
def __main__():
    h, w, n = list(map(int, input().split()))
    grid = []
    for i in range(h):
        row = []
        for j in range(w):
            row.append(0)
        grid.append(row)
    for i in range(n):
        ai, bi = list(map(int, input().split()))
        grid[ai - 1][bi - 1] = 1
    
    result = [0] * 10
    for i in range(h - 2):
        for j in range(w - 2):
            black = 0
            for i2 in range(3):
                for j2 in range(3):
                    if grid[i + i2][j + j2] == 1: black += 1 
            result[black] += 1
            
    for i in range(9):
        print(result[i])

__main__()

### FIXED CODE ###

def __main__():
    s = input()
    result = cal(s)
    print(result[0])

# return (下階層の和の合計, 下階層の和のパターン数)
def cal(s):
    if len(s) == 0:
        return(0, 1)
    elif len(s) == 1:
        return (int(s), 1)
    else:
        sum, times = 0, 0
        for i in range(len(s)):
            num = int(s[0:(i + 1)])
            result = cal(s[(i + 1):len(s)])
            sum += num * result[1] + result[0]
            times += result[1]
        return (sum, times)
            
__main__()
import math

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

x = ((B-1) // (A-1))+1
print(math.ceil(x))


### FIXED CODE ###

import math
A, B = list(map(int, input().split()))
print(math.ceil((B-1)/(A-1)))
iter_num = int(input())
num = input().split()

num_bin = [format(int(i),'b') for i in num]
max_len = len(num_bin[-1])

num_bin = [format(i, '0>{}'.format(max_len)) for i in num_bin]

tmp = []
for i in range(len(num_bin[0])):
  tmp_num = 0
  for j in num_bin:
    tmp_num += int(j[i])
  if tmp_num%2==0: tmp_num=0
  tmp.append(tmp_num)

flg = 0
for i in tmp:
  if i==0: pass
  else:
    flg = 1
    print('No')
    break
if flg == 0: print('Yes')
  

### FIXED CODE ###

iter_num = int(input())
num = input().split()
num = sorted([int(i) for i in num])

num_bin = [format(int(i),'b') for i in num]
max_len = len(num_bin[-1])

num_bin = [format(i, '0>{}'.format(max_len)) for i in num_bin]

tmp = []
for i in range(len(num_bin[0])):
  tmp_num = 0
  for j in num_bin:
    tmp_num += int(j[i])
  if tmp_num%2==0: tmp_num=0
  tmp.append(tmp_num)

flg = 0
for i in tmp:
  if i==0: pass
  else:
    flg = 1
    print('No')
    break
if flg == 0: print('Yes')
from decimal import *
 import math
 
 getcontext().prec = 10000
 
 a, b, c = map(int, input().split())
 a = Decimal(a)
 b = Decimal(b)
 c = Decimal(c)
 
 a = Decimal.sqrt(a)
 b = Decimal.sqrt(b)
 c = Decimal.sqrt(c)
 
 print(a, a * a)
 
 if a + b < c:
     print("Yes")
 else:
     print("No")
 

### FIXED CODE ###

from decimal import *
import math


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

a = Decimal.sqrt(a)
b = Decimal.sqrt(b)
c = Decimal.sqrt(c)

if a + b < c:
    print("Yes")
else:
    print("No")