ブロックの埋め込み (paizaランク C 相当)
解答例
法則性がないか考えます。
縦 2 マス、横 1 マスのブロックを配置するとき、
縦nが奇数だと1行余りますが、ブロックは回転できるので、横mが偶数ならばピッタリハマります。
mについても同様です。
したがって、nとmが両方とも奇数のときに、隙間が1つ空きます。
const fs = require("fs");
const input = fs.readFileSync("/dev/stdin", "utf-8").trim();
const lines = input.split("\n");
const [n, m] = lines[0].split(" ").map(Number);
if (n % 2 === 1 && m % 2 === 1) {
console.log(Math.floor(n * m / 2));//1つ隙間が空く。n*mの1/2切捨てで求まる。
} else {
console.log(n * m / 2);//ピッタリはまるのでn*mの1/2で求まる。
}