此题有点难理解,其实就是一个 n×mn \times m 的格点阵,就像这样(按原题数据 6×66 \times 6 画的):

·   ·   ·   ·   ·   ·

·   ·   ·   ·   ·   ·

·   ·   ·   ·   ·   ·

·   ·   ·   ·   ·   ·

·   ·   ·   ·   ·   ·

·   ·   ·   ·   ·   ·

然后每个格点都要用到,使原图成为一个 n×mn \times m 多边形,就像这样(只列举一种,还有很多):

·———·———·———·———·———·
|                   |
·   ·———·———·———·———|
|   |
·   ·———·———·———·———·
|                   |
·   ·———·———·———·———|
|   |
·   ·———·———·———·———·
|                   |
·   ·———·———·———·———|
//怎么这么像“E”啊?qwq

接着我们就可以使用皮克定理(Pick 定理)来写代码了,可以参照此处

AC code:

#include <bits/stdc++.h>
using namespace std;

int main() {
	int T, n, m;
	cin >> T;
	for (int i = 0; i < T; i++) {
		cin >> n >> m;
		cout << n * m / 2 - 1 << "." << n * m % 2 * 5 << "00" << endl;
	}
	return 0;
} //总体模仿035966_L3的代码