蒜头君最近找到了陶陶存放苹果的仓库!他发现陶陶的仓库里晒满了苹果干!
于是机智的蒜头君准备趁陶陶不在的时候悄悄拿走这些苹果干。
仓库可以看成是一个 N∗M 的地图,这个地图中每一个整数格点都有一堆苹果干,而蒜头君一开始在大门的位置也就是 (1,1),他每次可以移动到周围的格点中去
例如从 (1,1) 移动到 (1,2) 需要移动 1 米,当然蒜头君也可以直接从 (1,1) 走到 (2,2),距离就是 2
现在蒜头君想知道怎么计划拿(tou)苹果干的路线可以使得他走最少的路,当然他从门口进来自然还是最终还是需要回到门口的。
输入数据包含多组数据,每组数据包含两个整数 N,M ,含义如题
对于 100 的数据,N,M≤1000,且数据不超过 1000 组。
每组数据输出一个小数,表示蒜头君最少需要走的路,答案保留两位小数
3 5
2 2
15.41
4.00
解析:题意其实就i是走完所有点再返回到起点的最短路程,纸上模拟一下就可以发现,分类讨论。
#include
int main()
{int n,m;while(~scanf("%d%d",&n,&m)){if(n==1) printf("%.2lf\n",(m*1.0-1)*2);else if(n%2==0||m%2==0) printf("%.2lf\n",n*m*1.0);else printf("%.2lf\n",n*m*1.0+0.41);}return 0;
}