zig_zag 提交的BearNSWE面漆问题
#include <set>
#include <map>
#include <stack>
#include <queue>
#include <cmath>
#include <ctime>
#include <vector>
#include <cstdio>
#include <string>
#include <climits>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
double xx, yy;
class BearNSWE
{
public:
double totalDistance(vector <int> a, string dir)//no main function
{
int n = a.size();
double ans = 0.0;
xx = yy = 0.0;
for (int i = 0; i < n; i++)
{
if (dir[i] == 'N')
{
yy = yy + a[i];
}
else if (dir[i] == 'S')
{
yy = yy - a[i];
}
else if (dir[i] == 'W')
{
xx = xx - a[i];
}
else if (dir[i] == 'E')
{
xx = xx + a[i];
}
ans = ans + a[i];
}
return ans + sqrt(xx*xx + yy*yy);
}
};
toporder runner需要一个具有特定方法接口的类,它在问题语句中指定。对于这个特定的问题,它就在这里。
Topcoder将使用额外的源代码编译此代码,这是一个主要的方法,它运行示例。
如果你想在toporder编辑器中本地测试你的代码(或者只是自动生成运行它的代码),有几个插件可以使用,例如ExampleBuilder。
这只是一个带有类定义的.cpp文件。main()函数位于项目中的其他位置。