core: contest: add ledo contest rule (#481)

This commit is contained in:
panda authored and GitHub committed 2023-01-08 22:52:09 +08:00
1 parent f27dbb007a
commit 3ee29da3bd
9 files changed
+84 -7

No files matched your search

@@ -12,7 +12,7 @@
<ul class="info">
<li>
<span class="icon icon-award"></span>
{{ _('Rule') }}: {{ model.contest.RULES[tdoc['rule']].TEXT }}
{{ _('Rule') }}: {{ _(model.contest.RULES[tdoc['rule']].TEXT) }}
</li>
<li>
<span class="icon icon-calendar"></span>
@@ -56,7 +56,7 @@
{%- endfor -%}
<div class="section">
<div class="section__header">
<h1 class="section__title">{{ _('All Contests') if not rule else _('All {0} Contests').format(model.contest.RULES[rule].TEXT) }}</h1>
<h1 class="section__title">{{ _('All Contests') if not rule else _('All {0} Contests').format(_(model.contest.RULES[rule].TEXT)) }}</h1>
<div class="section__tools">
<form method="get" name="filter-form">
{{ _('Show') }}:
@@ -92,7 +92,7 @@
<h1 class="contest__title"><a href="{{ url('contest_detail', tid=tdoc.docId) }}" data-emoji-enabled>{{ tdoc.title }}</a></h1>
<ul class="supplementary list">
<li>
<a href="?rule={{ tdoc['rule'] }}" class="contest-type-tag"><span class="icon icon-award"></span>{{ model.contest.RULES[tdoc.rule].TEXT }}</a>
<a href="?rule={{ tdoc['rule'] }}" class="contest-type-tag"><span class="icon icon-award"></span>{{ _(model.contest.RULES[tdoc.rule].TEXT) }}</a>
</li>
{% if tdoc.rated %}
<li class="contest-tag-rated"><span class="icon icon-star"></span>Rated</li>
@@ -102,7 +102,7 @@
{%- endif -%}
{%- endfor -%}
{%- else -%}
{{ column.value|string|nl2br|safe }}
<span data-tooltip="{{ column.hover }}">{{ column.value|string|nl2br|safe }}</span>
{%- endif -%}
</td>
{%- endfor -%}
@@ -106,7 +106,7 @@
({{ _('Attended') }})
{% endif %}
</dd>
<dt>{{ _('Rule') }}</dt><dd>{{ model.contest.RULES[tdoc.rule].TEXT }}</dd>
<dt>{{ _('Rule') }}</dt><dd>{{ _(model.contest.RULES[tdoc.rule].TEXT) }}</dd>
<dt>{{ _('Problem') }}</dt><dd>{{ tdoc.pids.length }}</dd>
<dt>{{ _('Start at') }}</dt><dd>{{ contest.render_time(tsdoc.startAt or tdoc.beginAt) }}</dd>
<dt>{{ _('End at') }}</dt><dd>{{ contest.render_time(tsdoc.endAt or tdoc.endAt) }}</dd>
@@ -19,7 +19,7 @@
<h1 class="contest__title"><a href="{{ url('contest_detail', tid=tdoc.docId) }}" data-emoji-enabled>{{ tdoc.title }}</a></h1>
<ul class="supplementary list">
<li>
<a href="{{ url('contest_main', query={rule:tdoc.rule}) }}" class="contest-type-tag"><span class="icon icon-award"></span>{{ model.contest.RULES[tdoc.rule].TEXT }}</a>
<a href="{{ url('contest_main', query={rule:tdoc.rule}) }}" class="contest-type-tag"><span class="icon icon-award"></span>{{ _(model.contest.RULES[tdoc.rule].TEXT) }}</a>
</li>
{% if tdoc.rated %}
<li class="contest-tag-rated"><span class="icon icon-star"></span>Rated</li>
@@ -111,6 +111,10 @@
<p>OI 赛制排名规则为:总分高的排在前面,总分相等则排名相同。</p>
<p>ACM/ICPC 赛制所有题目递交后立即评测,以是否通过为准。</p>
<p>ACM/ICPC 赛制排名规则为:通过题目数多的排在前面,通过题目数相同的做题耗时(含罚时)少的排在前。</p>
<p>{{ _('Ledo') }} 赛制下,选手可以多次提交一道题目,并获得实时评测结果。</p>
<p>{{ _('Ledo') }} 赛制下,多次提交会导致选手的得分被扣除,排行榜将显示用户的最高得分。</p>
<p>{{ _('Ledo') }} 赛制下,每道题的最终得分为: $s \times \max(0.95^{n}, 0.7)$ 。$s,n$ 分别代表本次得分和本次提交前的尝试次数。</p>
<p>{{ _('Ledo') }} 排名规则为:按照如上规则折算后的分数从高到低排名。</p>
<p>时间与空间限制以题目说明为准,默认限制参见<a href="#limits">{{ _('Limitations') }}</a>。</p>
</div>
</div>