poj 1450 Gridland

简介:

我在之前的博文里面提到过:比赛的时候最怕做字符串处理或者是那种不断WA,却是因为一个字母是小写的题目。。。

那像1450这种题就是比赛中最希望碰到的题目。。。这种题就是读懂题目最重要,读懂了题目找到了规律,基本上在10分钟以内可以A掉。。。

题目大意:给出一个n×m的矩阵,每个点可以朝上下左右,还有4个斜着的方向走
问从某点出发,走遍所有的点的最短距离,每个点只能经过一次

很简单的一道题目,分奇数偶数进行判定,两个数都奇数就再加0.41。


在图上寻找规律后,容易看出,当M或N是偶数,或者都是偶数,最短距离为M*N。而当M和N都是奇数,则必有一条或以上的卸径,而最短距离是M*N-1+sqrt(2)。一定要画图才能明白


看了网上的结题报告,基本也都是这种方法。。。

AC的代码:

#include<iostream>

int main()
{
	int a,m,n,i;
	double s;

	scanf("%d",&a);
	for(i=1;i<=a;i++)
	{
		scanf("%d%d",&m,&n);
		s=m*n;
		
		if(m*n%2==1)
		{
			s+=0.41;		//根号 2 约等于1.414,-1+1.414=0.414
			printf("Scenario #%d:\n%.2lf\n\n",i,s);
		}
		else
			printf("Scenario #%d:\n%.2lf\n\n",i,s);
	}
	return 0;
}



相关文章
|
测试技术
POJ 1001
此题用最朴素的思路实现即可,需模拟加法器,乘法器,最烦人的地方是特殊情形,如末位是小数点(12.^2=144,取小数点),整数末位是0(100^2=10000),0次幂,测试用例可能超出题目中说的范围,可能包含0次幂(100.0^0=0, 0.10^1=0.1)。
753 0
|
C语言
poj 2503 查字典
Description You have just moved from Waterloo to a big city. The people here speak an incomprehensible dialect of a foreign language.
866 0
poj-1006-Biorhythms
Description 人生来就有三个生理周期,分别为体力、感情和智力周期,它们的周期长度为23天、28天和33天。每一个周期中有一天是高峰。在高峰这天,人会在相应的方面表现出色。例如,智力周期的高峰,人会思维敏捷,精力容易高度集中。
621 0
|
机器学习/深度学习 算法
|
机器学习/深度学习
|
机器学习/深度学习 Windows