blockquote class="warn"

This commit is contained in:
undefined committed 2020-06-23 23:03:17 +08:00
1 parent dd1b7c363a
commit 1f1efe900c
2 files changed
+15 -25

No files matched your search

+3 -9
View File
@@ -52,7 +52,7 @@ class Markdown extends MarkdownIt {
this.use(Mark); this.use(Mark);
this.use(Anchor); this.use(Anchor);
this.use(TOC); this.use(TOC);
const RE_CONTAINER = /^(note|warn|record-pending|record-progress|record-fail|record-pass|record-ignored)\s+(.*)$/; const RE_CONTAINER = /^(note|warn|record-pending|record-progress|record-fail|record-pass|record-ignored)\s+(.*?):::(.*)$/;
const CONTAINER_MAP = { const CONTAINER_MAP = {
note: ['<blockquote class="note">', '</blockquote>'], note: ['<blockquote class="note">', '</blockquote>'],
warn: ['<blockquote class="warn">', '</blockquote>'], warn: ['<blockquote class="warn">', '</blockquote>'],
@@ -69,16 +69,10 @@ class Markdown extends MarkdownIt {
render(tokens, idx) { render(tokens, idx) {
const m = tokens[idx].info.trim().match(RE_CONTAINER); const m = tokens[idx].info.trim().match(RE_CONTAINER);
if (!m) return ''; if (!m) return '';
if (tokens[idx].nesting === 1) {
if (CONTAINER_MAP[m[1]]) {
return `${CONTAINER_MAP[m[1]][0] + md.utils.escapeHtml(m[2])}\n`;
}
return `[${m[1]}] ${md.utils.escapeHtml(m[2])}\n`;
}
if (CONTAINER_MAP[m[1]]) { if (CONTAINER_MAP[m[1]]) {
return `${CONTAINER_MAP[m[1]][1]}\n`; return `${CONTAINER_MAP[m[1]][0]}${md.utils.escapeHtml(m[2])}\n${CONTAINER_MAP[m[1]][1]}\n${md.utils.escapeHtml(m[3])}`;
} }
return `[/${m[1]}]`; return `[${m[1]}]\n${md.utils.escapeHtml(m[2])}\n[/${m[1]}]\n${md.utils.escapeHtml(m[3])}`;
}, },
}); });
} }
+12 -16
View File
@@ -38,9 +38,7 @@ Hydro 评测机使用进程虚拟内存与物理内存总和计算内存空间
- :::record-ignored Canceled::: 其他:评测被取消 - :::record-ignored Canceled::: 其他:评测被取消
- :::record-fail Unknown Error::: 其他:未知错误 - :::record-fail Unknown Error::: 其他:未知错误
:::note :::note 有“成绩取消”字样则说明管理员手动标记此记录为取消,可能违反了服务条款,比如代码被发现与其他用户的代码十分相似。:::
有“成绩取消”字样则说明管理员手动标记此记录为取消,可能违反了服务条款,比如代码被发现与其他用户的代码十分相似。
:::
# Compile Error # Compile Error
@@ -51,16 +49,16 @@ Hydro 评测机使用进程虚拟内存与物理内存总和计算内存空间
- 对于 C/C++:见下 - 对于 C/C++:见下
- 一般性的编译错误 - 一般性的编译错误
:::warn <blockquote class="warn">
对 C/C++ 选手的特别提醒: <p>对 C/C++ 选手的特别提醒:</p>
<ul> <ul>
<li>1. __int64 在 GNU C++ 中应写成 long long 类型</li> <li>1. __int64 在 GNU C++ 中应写成 long long 类型</li>
<li>2. main() 返回值必须定义为 int ,而不是 void</li> <li>2. main() 返回值必须定义为 int ,而不是 void</li>
<li>3. for 语句中的指标变量 i 将会在如"for (int i = 0...) {...}"语句之后变为无效</li> <li>3. for 语句中的指标变量 i 将会在如"for (int i = 0...) {...}"语句之后变为无效</li>
<li>4. itoa 不是一个通用 ANSI 函数(标准 C/C++ 中无此函数)</li> <li>4. itoa 不是一个通用 ANSI 函数(标准 C/C++ 中无此函数)</li>
<li>5. printf 中使用 %lf 格式是不正确的</li> <li>5. printf 中使用 %lf 格式是不正确的</li>
</ul> </ul>
::: </blockquote>
# Training # Training
@@ -84,9 +82,7 @@ ACM/ICPC 赛制排名规则为:通过题目数多的排在前面,通过题
Hydro RP 分为固定 RP 与浮动 RP ,固定 RP 可由活动、比赛等的奖励获得,浮动 RP 由一般性通过题目获得。 Hydro RP 分为固定 RP 与浮动 RP ,固定 RP 可由活动、比赛等的奖励获得,浮动 RP 由一般性通过题目获得。
浮动 RP 是一个动态的数值,每个用户在每道题上获得的 RP 都不一样,并且未来也不固定(即浮动之意)。 浮动 RP 是一个动态的数值,每个用户在每道题上获得的 RP 都不一样,并且未来也不固定(即浮动之意)。
:::note :::note 每道题的浮动 RP 由该题通过总人数与该用户通过此题的名次计算得来。:::
每道题的浮动 RP 由该题通过总人数与该用户通过此题的名次计算得来。
:::
# Dataset Format # Dataset Format