程序设计比赛举办命题工作流程总结

程序设计比赛举办命题工作流程总结

所需步骤:题目选择,题面制作,题解制作,题目上传。
所需平台:codeforces(一个算法题目练习平台,用来题目的选择),polygon(codeforces制题平台,用来题面制作),overleaf(latex编译平台,用来题解的制作),Domjudge(ICPC官方测评平台,用来题目的上传)。

题目选择部分

题面制作部分

  1. New problem 可以创建新的题目,New Contest可以创建新的比赛,最后需要在整体的比赛中导出题目。
    在这里插入图片描述
  2. 填写新问题的编号名字,因为无法填写中文或大写,所以我一般都填写为:题目单词缩写-难度,如:fpt-1700 。
    在这里插入图片描述
  3. 左边为题目的时间限制,内存限制,这并不过多解释;上边和右边为题面制作的重点。
    在这里插入图片描述
  4. 为了题目能够支持中文编译,所以先更改配置文件。首先点击上方的Files,进入后点击statement.ftl的Edit,将其中的配置替换为以下:
\documentclass [11pt, a4paper, oneside] {article}
\usepackage {CJK}
\usepackage [T2A] {fontenc}
\usepackage [utf8] {inputenc}
\usepackage [english, russian] {babel}
\usepackage {amsmath}
\usepackage {amssymb}
\usepackage <#if contest.language?? && contest.language="russian">[russian]<#elseif contest.language?? && contest.language="ukrainian">[ukrainian]</#if>{olymp}
\usepackage {comment}
\usepackage {epigraph}
\usepackage {expdlist}
\usepackage {graphicx}
\usepackage {ulem}
\usepackage {import}
\usepackage{ifpdf}
\ifpdf
  \DeclareGraphicsRule{*}{mps}{*}{}
\fi

\begin {document}
\begin{CJK}{UTF8}{gbsn}
\contest
{${contest.name!}}%
{${contest.location!}}%
{${contest.date!}}%

\binoppenalty=10000
\relpenalty=10000

\renewcommand{\t}{\texttt}

<#if shortProblemTitle?? && shortProblemTitle>
  \def\ShortProblemTitle{}
</#if>

<#list statements as statement>
<#if statement.path??>
\graphicspath{{${statement.path}}}
<#if statement.index??>
  \def\ProblemIndex{${statement.index}}
</#if>
\import{${statement.path}}{./${statement.file}}
<#else>
\input ${statement.file}
</#if>
</#list>
\end{CJK}
\end {document}
  1. 点击右侧的Checker,设置题目的判题器,这里我常选择第三个lcmp.cpp-Lines。
    在这里插入图片描述
  2. 点击右侧的tests设置题面样例,输入题面样例,并且点击Use in statements。在这里插入图片描述
  3. 点击右侧的Solutions,上传一份标准题解代码。
  4. 点击Statements,选择Chinese,随后使用Latex编辑题干,输入输出范围,样例解答。
  5. 点击In PDF预览PDF,无误后右键保存(既导出)。
  6. 点击右侧最下面的commit,提交所有更改
  7. 常见问题:下划线_需要用反斜杠\转义,否则无法编译;Files需要修改,否则无法编译中文;不同人的同一题目有不同版本,可能是修改后未提交。

题解制作部分(beamer ppt)

  1. 先点击tamplates,搜索beamer,随意选择一个模板。
  2. 然后将ppt模板代码复制其中。本模板每一道题目分为简明题意和题解两页,可直接向其中填写。(注意,下方代码承办单位logo哪里需要按自己需求填写后才可以编译运行)
\documentclass{beamer}
\usepackage{ctex, hyperref}
\usepackage[T1]{fontenc}

% other packages
\usepackage{latexsym,amsmath,xcolor,multicol,booktabs,calligra}
\usepackage{graphicx,pstricks,listings,stackengine}

\author{作者}
\title{比赛名称}
\subtitle{官方题解}
\institute{举办单位}
\date{时间}
\usepackage{nnu}

% defs
\def\cmd#1{\texttt{\color{red}\footnotesize $\backslash$#1}}
\def\env#1{\texttt{\color{blue}\footnotesize #1}}
\definecolor{deepblue}{rgb}{0,0,0.5}
\definecolor{deepred}{rgb}{0.6,0,0}
\definecolor{deepgreen}{rgb}{0,0.5,0}
\definecolor{halfgray}{gray}{0.55}

\lstset{
    basicstyle=\ttfamily\small,
    keywordstyle=\bfseries\color{deepblue},
    emphstyle=\ttfamily\color{deepred},    % Custom highlighting style
    stringstyle=\color{deepgreen},
    numbers=left,
    numberstyle=\small\color{halfgray},
    rulesepcolor=\color{red!20!green!20!blue!20},
    frame=shadowbox,
}

\begin{document}

\kaishu
\begin{frame}
    \titlepage
    \begin{figure}[htpb]
        \begin{center}
            \includegraphics[width=0.25 \linewidth]{pic/承办单位的Logo}
        \end{center}
    \end{figure}
\end{frame}

\begin{frame}{题目名称}
 
    \begin{block}{简明题意}
        
        
    
    \end{block}
    
    
\end{frame}

\begin{frame}{题目名称}
    
    \begin{block}{题解}

    
    
    \end{block}
    
\end{frame}
\end{document}

题目上传部分

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值