// AtCoder165 C

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
#include <assert.h>
#include <string.h>
#include <memory.h>
#include <malloc.h>
#include <stdlib.h>

// qsortで用いる比較用関数．*a<*bならaが先になる．
int compare(const void* a, const void* b) {
    return *(int*)a - *(int*)b;
}

long long int nCk(int n, int k){
    long long int bunbo = 1, bunsi = 1;
    while(k>0){
        bunbo *= k;
        bunsi *= n;
        k -= 1;
        n -= 1; 
    }
    return bunsi/bunbo;
}

int main() {

    int n,i;
    int* a;  // 動的メモリの先頭アドレス用のポインタ
    long long int A;
    long long int B;
    long long int N;
    long long int max=0;
    long long int tmp;

    scanf("%lld %lld %lld", &A, &B, &N);
    /*
    while(N>0){
        tmp = (A * N / B) - A * (N/B);
        if(max < tmp) max = tmp;
        N--;
    }
    */
   max = (A * N / B) - A * (N/B);
   if(N > B) max = (A * (B-1) / B) - A * ((B-1)/B);
    printf("%lld", max);
    return 0;
}