USACO采用上传文件的方式提交自己的题解,而且文件的格式也有严格要求。下面我们就一步步来看如何上传文件,文件的格式要求。
问题提交流程
登录
登录USACO后,界面如下图。
建议仔细阅读一下黑色框中的TEXT Submitting Solutions,这里有USACO提交要求的详细介绍。
选择题目
点击红色框的PROB Your Ride Is Here,将进入第一个例题。中间巴拉巴拉有一堆关于题目的描述之类,我就跳过去了。如果有需要,请自己登录到USACO去查看,或者下面的链接查看中文版本http://47.110.135.197/problem.php?id=4362。
特别强调一个格式
USACO使用一段特别要求的注释,来帮助判题机完成相关任务。具体格式说明如下图。
编写题解程序
/*
ID: your_id_here
PROG: ride
LANG: C++
*/
#include <cstdio>
#include <iostream>
using namespace std;
int main() {
freopen("ride.in", "r", stdin);
freopen("ride.out", "w", stdout);
char str1[8] = {};
unsigned long long ans1 = 1;
char str2[8] = {};
unsigned long long ans2 = 1;
scanf("%s %s", &str1, &str2);
int i;
for (i=0; str1[i]!=0; i++) {
ans1 *= (str1[i]-'A'+1);
}
for (i=0; str2[i]!=0; i++) {
ans2 *= (str2[i]-'A'+1);
}
if (ans1%47 == ans2%47) {
printf("GO\n");
} else {
printf("STAY\n");
}
fclose(stdin);
fclose(stdout);
return 0;
}
选择本地文件
在本地测试通过后,开始选择本地文件。
我们可以看到一个“浏览”按钮,该按钮是选择一个文件。选择完文件后,右边有一个“Send it in!”按钮,该按钮将您选择的问题上传到服务器并评判。USACO采用CGI模式,将文件上传并评测。
这样就完成了本地文件的选择。如下图所示。
上传文件
非常简单,点击上图的“Send it in!”按键即可。然后我们就是耐心等待服务器的测试结果。
测试结果反馈
这样就通过了一个测试题目。
总结
1、USACO就是流程比较复杂,这个和国内好多慕课提交程序是一样的。
2、USACO在文件前面有一段必须的专门格式。必须严格按照要求书写。
3、USACO需要在文件上增加国内信息学复赛中必须使用的freopen()函数。