import 'dart:io';

void main() {
  List xkd = stdin.readLineSync().split(" ").map((x) => int.parse(x)).toList();

  int x = (xkd[0]).abs();
  int k = xkd[1];
  int d = xkd[2];

  int ans;
  if (x == 0) {
    ans = (k % 2 == 0) ? 0 : d;
  } else if (x >= k * d) {
    ans = x - (k * d);
  } else {
    for (int i = 1; i <= k; i++) {
      if (d * i > x) {
        if ((k - i) % 2 == 0) {
          ans = d * i - x;
          break;
        } else {
          ans = d * i - x - d;
          break;
        }
      }
    }
  }

  print(ans);
}