#include <math.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef unsigned long long int ull;
typedef long long int ll;
typedef long double ld;

int main(void) {
  int scan; // scanf result
  ull a; // to input 
  ull b; // to input 
  ull n; // to input 
  ull *answer;

  scan = scanf("%llu", &a);
  scan = scanf("%llu", &b);
  scan = scanf("%llu", &n);

  answer = (ull *)malloc(sizeof(ull) * (n + 1));
  for (ull i = 0 ; i <= n; i++) {
    if (b != 0) {
      answer[i] = (ull)floor((double)((a * i) / b)) - a * (ull)floor((double)(i / b));
    } else {
      answer[i] = 0;
    }
  }

  for (ull k = 0; k <= n; k++) {
    for (ull m = k; m <= n; m++) {
      if (answer[k] < answer[m])
      {
        ull temp;
        temp = answer[k];
        answer[k] = answer[m];
        answer[m] = temp;
      }
    }
  }

  printf("%llu", answer[0]);
  return (0);
}
