#include <bits/stdc++.h>
int main() {
  char token[100] = {};
  unsigned long long h = 0, w = 0;
  unsigned long long count = 0, w_num = 0;
  fgets(token, sizeof(token), stdin);
  h = atoi(strtok(token, " "));
  w = atoi(strtok(NULL, " "));
  if (h % 2 == 0) {
    if (w % 2 == 0) {
      w_num = w / 2;
      count = w_num * h;
    } else {
      w_num = w / 2 + 1;
      count = (w_num * 2 - 1) * (h / 2);
    }
  } else {
    if (w % 2 == 0) {
      w_num = w / 2;
      count = (w_num * 2) * (h / 2) + w_num;
    } else {
      w_num = w / 2 + 1;
      count = (w_num * 2 - 1) * (h / 2) + w_num;
    }
  }
  printf("%lld", count);
  return 0;
}
