上链接:杭电1046
题目大意:
给出n*m的格子,输出从一个角开始遍历所有点的最短步骤
第一反应,DFS, but TLE!(错误代码贴了丢人23333)
其实这是道很水的题,找规律即可
贴代码:
#include <cstdio>
using namespace std;
int main()
{
int T;
scanf("%d", &T);
int k = 1;
int n, m;
while(T--)
{
scanf("%d %d", &n, &m);
if(n&1 && m&1)
printf("Scenario #%d:\n%.2f\n\n", k++, double(n*m+0.41));
else
printf("Scenario #%d:\n%d.00\n\n", k++, n*m);
}
return 0;
}
注意事项:
1.输出格式
2.遇到问题先考虑是否有规律