deforces的比赛过程也非常有趣。
每场比赛,参赛成员每40人左右会进入同一个房间,同时☈♆🆅开始读题🔴、答题。
deforces赛制的题目会有两套数据,一套称为预测试⛽☕⚸数🄥⛑🙮据,另一套称为系统测试数据🅒🅿🌓。
在比赛进行期间,如果选🙧手写完答案,并且对自己的答案足够自信的话,就可以在比赛结束之前提前提交。
比赛进行期间提交的答案,将会用预测试数据测评——如果通过,则会显示预测试通过;如果没有通过,将会显示错误编号🃔和👵🍋错误类型🅽,并且还会被罚扣50分。
但是,预🙫测试通过,并不代表提交的代码就完全没有问题了。
当一道题目🍠通过预测试后,就可以单击题目列表中那一道题目后面的“锁”的符号——把这道题目锁定。
当一道题目被锁定后,这道题就不能再次提🌶🃧🚈交了。
但是锁题后,选手就可🍕🇻🍕🇻🍕🇻以查看同一个房间中其它也锁题了的竞争者的本题代码!
如果🖈🐦🂃能找🙫到其他人代码中🙧的错误,就可以向对方发起攻击!
具体做的🙫做法,就是提交一组测试数据,导致对方的代码错误,比如说ansr。
一次成功的攻击,就可以获得100分!
不过,如🙫果发🖺🗯🟅动攻击却失败了,就要倒扣50分🏄🗣🝝。
这样可以攻击对手,让对手扣分、给🜝自己加分的功能,当然非常有趣、非常刺激。
但是,锁定了题目不能解锁🍜🈺,也不能再提交。
也就是说,攻击别人的🍕🇻同时,自己也有被攻击的风险。如果自己的程序中🛸♡有错误,那么在攻击别人时,别人也都能来攻击🆉🍯你。
而这时,已经锁定的题目是无法修改🜝的。如果被选手攻击了,即使意识到自己哪里出错了,也没办法再改,只能心痛地看着自己被攻击扣分,-50,-50,-50……
在比赛时间结束后,还会有系统测试。
就是将已经通过预测试🍕🇻的程度,再测试一套数据。通过系统测试的程序,才🌨🁫算真正答题正确,得到最终分数,否则不得分。
比赛规则如此的情况下,绝大部分选🜝手锁题都会非常谨慎,要对自己的程序🌨🁫十分自信,才会按下“锁”这个按钮。