Problem:
Score : 400 points

Problem Statement

Given are integers A, B, and N.

Find the maximum possible value of floor(Ax/B) - A × floor(x/B) for a non-negative integer x not greater than N.

Here floor(t) denotes the greatest integer not greater than the real number t.

Constraints

1 ≤ A ≤ 10^{6}

1 ≤ B ≤ 10^{12}

1 ≤ N ≤ 10^{12}

All values in input are integers.

Input

Input is given from Standard Input in the following format:

A B N

Output

Print the maximum possible value of floor(Ax/B) - A × floor(x/B) for a non-negative integer x not greater than N, as an integer.

Sample Input 1

5 7 4

Sample Output 1

2

When x=3, floor(Ax/B)-A×floor(x/B) = floor(15/7) - 5×floor(3/7) = 2. This is the maximum value possible.

Sample Input 2

11 10 9

Sample Output 2

9

Solution in PyPy3 (7.3.0) (judge verdict: Wrong Answer)

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

if N < B:
    print((A*N)//B)
elif N == B:
    NN = N-1
    print((A*NN)//B)
else:
    if N < 2*B:
        sahen = (N*A)//B
        uhen = A
        print(sahen - uhen)
    else:
        wN = N % B
        wwN = B * wN -1
        sahen1 = (A*wwN)//B
        uhen1 = A * (wwN//B)
        kouho1 = sahen1 - uhen1
        
        sahen2 = (A*N)//B
        uhen2 = A * (N//B)
        kouho2 = sahen2 - uhen2
        print(max(kouho1,kouho2))