#include <stdio.h>
int main()
{
int t;
double m ,n;
scanf("%d", &t);
for (int i = 1; i <= t; i++) {
scanf("%lf%lf", &m, &n);
printf("Scenario #%d:\n", i);
if ((int)m % 2 == 0 || (int)n % 2 == 0) {
printf("%.2lf\n", m * n);
}
else
printf("%.2lf\n", m * n - 1 + 1.414);
printf("\n");
}
return 0;
}
题目大意为计算出从一个城市出发经过所有城市后再回到原来的城市的最短路径。地图中的两边各有m和n个城市,当m,n中有一个为偶数,则最短的路径为m*n,若两个都是奇数,最短的路径为m*n-1+1.414。
ZOJ1037-Gridland
最新推荐文章于 2018-08-31 16:59:43 发布