航行日志

GCJ2010居然说我违规,取消下轮资格,真是无语了。

邮件内容如下:
Disqualification from Google Code Jam 2010
[text]
Hello Wooley,

Unfortunately, we determined that your participation in the Qualification Round violated our official Rules and Terms, as stated at http://code.google.com/codejam/rules.html, and you have been eliminated from this year’s contest. Please read through both our Rules and our Terms and Conditions thoroughly. If you still have questions regarding your disqualification, please contact us at programmingcontest-feedback@google.com.

Regards,
The Code Jam Team
[/text]
其实,挺奇怪的,一没有多个帐号,二没有抄袭他人。做题当天,本来7点开始,刚巧这天,新房的热水器送货,就赶了过去,到晚上5点左右回家,做题,pass了A,C全部和B的small部分。像这种比赛,其实也是拿来当玩的,过不过本来也没有什么,不过被套了这么一个帽子,心里还真是很不舒服。
我看了过去几年的比赛代码,尤其是排在前几的那些代码,很多人都使用模板,类似这样:
[cpp]#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

using namespace std;

#define pb push_back

#define all(v) v.begin(),v.end()

#define rall(v) v.rbegin(),v.rend()

#define sz size()

#define rep(i,m) for(int i=0;i<(int)(m);i++)

#define rep2(i,n,m) for(int i=n;i<(int)(m);i++)

#define For(it,c) for(__typeof(c.begin()) it=c.begin();it!=c.end();++it)

#define mem(a,b) memset(a,b,sizeof(a))

#define mp make_pair

#define dot(a,b) ((conj(a)*(b)).X)

#define X real()

#define Y imag()

#define length(V) (hypot((V).X,(V).Y))

#define vect(a,b) ((b)-(a))

#define cross(a,b) ((conj(a)*(b)).imag())

#define normalize(v) ((v)/length(v))

#define rotate(p,about,theta) ((p-about)*exp(point(0,theta))+about)

#define pointEqu(a,b) (comp(a.X,b.X)==0 && comp(a.Y,b.Y)==0)

typedef stringstream ss;
typedef pair pii;
typedef vector vpii;
typedef vector vs;
typedef vector vi;
typedef vector vd;
typedef vector > vii;
typedef long long ll;
typedef long double ld;
typedef complex point;
typedef pair segment;
typedef pair circle;
typedef vector polygon;[/cpp]
这样有个好处,就是减少手写代码,这样也就减少了误输入的几率。我在赛前就挑了一份代码,保留之前预定义,然后,删除main()部分的内容,这样一个模板,可以让我很方便的处理新题,不用每次coding了。这是很有用的一条经验,至少我这么认为,去年,也是这么做的。可能就是这个原因,google认为我违规了,可是找遍他的规则,也没有看到这条违规理由啊。真是莫名其妙。
我回了一份申诉的邮件:
[text]
Hi,friends,
I really don’t know why I was disqualified.
In fact, I make ahmed.aly’s code to be my Template.The code you can see in attachment.It’s the solution of Qualification Round Africa 2010,”Reverse Words”.He is the top 1 of Qualification Round Africa 2010.
I have read many codes of the past GCJ.And I find out that many peaple has the template to solve problems more quick.
I think this practice does not violate any rules.
Want to wait until satisfactory reply.[/text]
还有3天,Round 1就开始了。如果没有得到回复,今年的CGJ对我来说也就结束了,这种大学生时代的玩意,看来注定要离我远去。