import sys

read = sys.stdin.buffer.read

readline = sys.stdin.buffer.readline

readlines = sys.stdin.buffer.readlines

sys.setrecursionlimit(10 ** 7)



from math import floor



a, b, n = list(map(int, readline().split()))

if b > n:

    print((floor(a * n / b) - a * floor(n / b)))

else:

    print((floor(a * (b - 1) / b) - a * floor((b - 1) / b)))

import sys

read = sys.stdin.buffer.read

readline = sys.stdin.buffer.readline

readlines = sys.stdin.buffer.readlines

sys.setrecursionlimit(10 ** 7)



from math import floor



a, b, n = list(map(int, readline().split()))

print((floor(a * min(b - 1, n) / b) - a * floor(min(b - 1, n) / b)))

import sys

read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline
readlines = sys.stdin.buffer.readlines
sys.setrecursionlimit(10**7)
from math import floor

a, b, n = list(map(int, readline().split()))
if b > n:
    print((floor(a * n / b) - a * floor(n / b)))
else:
    print((floor(a * (b - 1) / b) - a * floor((b - 1) / b)))

import sys

read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline
readlines = sys.stdin.buffer.readlines
sys.setrecursionlimit(10**7)
from math import floor

a, b, n = list(map(int, readline().split()))
print((floor(a * min(b - 1, n) / b) - a * floor(min(b - 1, n) / b)))

-if b > n: -    print((floor(a * n / b) - a * floor(n / b))) -else: -    print((floor(a * (b - 1) / b) - a * floor((b - 1) / b))) +print((floor(a * min(b - 1, n) / b) - a * floor(min(b - 1, n) / b)))