zoukankan      html  css  js  c++  java
  • OI 比赛 tex 模板

    最近教练三天两头让我们组比赛,为了编写“好看”的题面和题解,装了 texlive+texstudio。

    然后去网上找一堆模板,最后终于找到了能用的两份。

    documentclass[UTF8]{ctexart}
    usepackage{geometry}
    usepackage{fancyhdr}
    usepackage{graphicx}
    usepackage{array}
    usepackage{amsmath}
    usepackage{listings}
    usepackage{xcolor}
    usepackage{fontspec}
    
    ewcommand{PreserveBackslash}[1]{let	emp=\#1let\=	emp}
    
    ewcolumntype{C}[1]{>{PreserveBackslashcentering}p{#1}}
    
    ewcolumntype{R}[1]{>{PreserveBackslash
    aggedleft}p{#1}}
    
    ewcolumntype{L}[1]{>{PreserveBackslash
    aggedright}p{#1}}
    author{zihao{2}2021 ???-?2}
    date{zihao{2}day1 \ zihao{-3}	extbf{时间:$2021$~年~$11$~月~$8$~日~$14:30sim18:30$}}
    	itle{zihao{2}	extbf{这里填什么都行就是不能写???}}
    geometry{left=3.18cm,right=3.18cm,top=2.54cm,bottom=2.54cm}
    lstset{
    	columns=fixed,       
    	numbers=left,                                        % 在左侧显示行号
    	numberstyle=	inycolor{gray},                       % 设定行号格式
    	frame=none,                                          % 不显示背景边框
    	backgroundcolor=color[RGB]{245,245,244},            % 设定背景颜色
    	keywordstyle=color[RGB]{40,40,255},                 % 设定关键字颜色
    	numberstyle=footnotesizecolor{darkgray},           
    	commentstyle=itcolor[RGB]{0,96,96},                % 设置代码注释的格式
    	stringstyle=
    mfamilyslshapecolor[RGB]{128,0,0},   % 设置字符串格式
    	showstringspaces=false,                              % 不显示字符串中的空格
    	language=c++,                                        % 设置语言
    }
    egin{document}
    	
    	maketitle
    	setcounter{page}{1}
    	pagenumbering{arabic}
    		extbf{一、题目概况}
    	egin{center}
    		egin{tabular}{*{4}{|L{9em}}|}
    			hline
    			题目名称 & 格雷码 & 括号树 & 树上的数\ hline
    			题目类型 & 传统型 & 传统型 & 传统型 \ hline
    			目录 & 	exttt{code} & 	exttt{brackets} & 	exttt{tree} \ hline
    			可执行文件名 & 	exttt{code} & 	exttt{brackets} & 	exttt{tree} \ hline
    			输入文件名 & 	exttt{code.in} & 	exttt{brackets.in} & 	exttt{tree.in} \ hline
    			输出文件名 & 	exttt{code.out} & 	exttt{brackets.out} & 	exttt{tree.out} \ hline
    			每个测试点时限 & 1.0 秒 & 1.0 秒 & 60.0 秒 \ hline
    			内存限制 & 256 MiB & 256 MiB & 256 MiB \ hline
    			子任务数目 & 20 & 20 & 20 \ hline
    			测试点是否等分 & 是 & 是 & 是 \ hline
    		end{tabular}
    	end{center}
    	
    		extbf{二、提交源程序文件名}
    	egin{center}
    		egin{tabular}{*{4}{|L{9em}}|}
    			hline
    			对于C++语言 & 	exttt{code.cpp} & 	exttt{brackets.cpp} & 	exttt{tree.cpp} \ hline
    			对于C语言 & 	exttt{code.c} & 	exttt{brackets.c} & 	exttt{tree.c} \ hline
    			对于pascal语言 & 	exttt{code.pas} & 	exttt{brackets.pas} & 	exttt{tree.pas} \ hline
    		end{tabular}
    	end{center}
    	
    		extbf{三、编译选项}
    	egin{center}
    	egin{tabular}{|L{9em}|C{29.4em}|}
    	hline
    	    对于C++语言 & 	exttt{-lm -O2 -std=c++17} \ hline
    	    对于C语言 & 	exttt{-lm -O2} \ hline
    	    对于pascal语言 &  \ hline
    	end{tabular}
    	end{center}
    	
    		extbf{四、注意事项}
    	egin{enumerate}
    		item{文件名(程序名和输入输出文件名)必须使用英文小写。}
    		item{C/C++中函数main()的返回类型必须是int,程序正常结束时的返回值必须是0。}
    		item{若无特殊说明,结果的比较方式为全文比较(过滤行末空格及文末回车)}
    		item{程序可使用的栈内存空间限制与题目的内存限制一致。}
    		item{评测时采用的机器配置为:Intel® Core™ i5-9500 CPU @ 3.00GHz ,内存8G。上述时限以此配置为准。}
    		item{评测在当前最新公布的 Ubuntu 20.04 下进行,各语言的编译器版本以此为准。}
    		item{$sum$ 是求和运算符,$sumlimits_{i=1}^na_i$ 的值等于 $a_1+a_2+dots+a_n$。}
    	end{enumerate}
    	
    	
    ewpage
    	pagestyle{plain}
    	
    	% T1
    	setcounter{page}{3}
    	
    ewpage
    	section*{zihao{-1}格雷码 (	exttt{code})}
    	subsection*{【题目描述】}
    	subsection*{【输入格式】}
    	从输入文件 oldmath $code.in$ unboldmath 中读入数据。
    	subsection*{【输出格式】}
    	输出到文件 oldmath $code.out$ unboldmath 中。
    	subsection*{【样例 1 输入】}
    	egin{lstlisting}
    
    	end{lstlisting}
    	subsection*{【样例 1 输出】}
    	egin{lstlisting}
    00011000111111010000001001001000000001100011
    	end{lstlisting}
    	subsection*{【样例 2】}
    	见选手目录下的 oldmath $code/code2.in$ 和 $code/code2.ans$ unboldmath。
    	subsection*{【数据范围】}
    	% T2
    	
    ewpage
    	section*{zihao{-1}括号树 (	exttt{brackets})}
    	subsection*{【题目描述】}
    	subsection*{【输入格式】}
    	从输入文件 oldmath $brackets.in$ unboldmath 中读入数据。
    	subsection*{【输出格式】}
    	输出到文件 oldmath $brackets.out$ unboldmath 中。
    	subsection*{【样例 1】}
    	见选手目录下的 oldmath $brackets/brackets1.in$ 和 $brackets/brackets1.ans$ unboldmath。
    	subsection*{【数据范围】}
    	% T3
    	
    ewpage
    	section*{zihao{-1}树上的数 (	exttt{tree})}
    	subsection*{【题目描述】}
    	subsection*{【输入格式】}
    	从输入文件 oldmath $tree.in$ unboldmath 中读入数据。
    	subsection*{【输出格式】}
    	输出到文件 oldmath $tree.out$ unboldmath 中。
    	subsection*{【样例 1】}
    	见选手目录下的 oldmath $tree/tree1.in$ 和 $tree/tree1.ans$ unboldmath。
    	subsection*{【数据范围】}
    end{document}
    
    documentclass{ctexbeamer}        % 文档类beamer的汉化版本
    
    usefonttheme{serif}              % 使用衬线字体
    usefonttheme{professionalfonts}  % 数学公式字体
    
    usepackage{mathtools}
    
    %% --> 配置中英文字体
    % usepackage{fontspec}
    % setmainfont{Liberation Serif}
    % setsansfont{DejaVu Sans}
    % setmonofont{Cousine}
    % usepackage{xeCJK}
    % setCJKmainfont[BoldFont=Noto Sans SC]{Noto Serif SC}
    % setCJKsansfont{Noto Sans SC}
    % setCJKmonofont{WenQuanYi Micro Hei Mono}
    
    %% --> 主题和色彩风格
    usetheme{Frankfurt}
    usecolortheme{orchid}
    
    
    egin{document}
    	
    	%% --> 导言页
    	%
    		itle{刷题赛 3 题解}
    	author{p\_b\_p\_b}
    %	institute{加里敦大学}
    	frame{	itlepage}
    	
    	%% --> 目录结构
    	%
    	egin{frame}{目录}
    			ableofcontents[hideallsubsections]
    	end{frame}
    	
    	%% --> 正式内容开始
    	%
    	section{A 白日梦}    % 第 1 节
    	
    	%% 每一节开头显示目录,并高亮当前节的主题
    	AtBeginSection[]{frame{	ableofcontents[currentsection,hideallsubsections]}}
    	
    	%% --> 第 1 帧
    	egin{frame}{A 白日梦}{题目描述}
    		
    		给定字符串 $S$,求最大的正整数 $k$,使得存在长为 $k$ 的非空字符串序列 $s$,使得 $s_i$ 都是 $S$ 的子串,且 $s_{i-1}$ 在 $s_i$ 中出现至少两次。
    		
    		$|S|le 2	imes 10^5$。
    		
    	end{frame}
    	
    	%% --> 第 2 帧
    	egin{frame}{A 白日梦}{题解}
    		
    		onslide<1->{建出 SAM 的 Parent 树,用主席树维护 endpos 集合。}
    		
    		onslide<2->{从上至下 dp,设 $f_i$ 表示到节点 $i$ 时序列的长度,$g_i$ 表示此时序列的末尾节点最浅的是哪个,转移状态直接贪心判断 $g_{fa_i}$ 的字符串是否在 $i$ 表示的字符串中出现至少 $2$ 次。}
    		
    		onslide<3->{时间复杂度 $O(nlog n)$。}
    		
    	end{frame}
    	
    	
    	section{H 希望树}    % 第 2 节
    	
    	%% --> 第 3 帧
    	egin{frame}{H 希望树}{题目描述}
    		
    		给定 $n$ 个点的树,$m$ 次询问 $[l,r]$,求 $max{	ext{dis}(u,v)ig|lle ule vle r}$。
    		
    		$n,mle 3	imes 10^5$
    		
    	end{frame}
    
    	egin{frame}{H 希望树}{题解}
    	
    		onslide<1->{对于两个点集 $S,T$,$Scup T$ 的直径端点必定是 $S$ 或 $T$ 的直径端点。}
    		
    		onslide<2->{使用 ST 表求 lca 和维护直径端点。}
    		
    		onslide<3->{时间复杂度 $O(nlog n+m)$。}
    	
    	end{frame}
    	
    end{document}
    

    预览效果(部分):

  • 相关阅读:
    springboot 文件上传和下载
    spring-boot-starter-actuator不起作用
    spring boot使用AOP切面编程
    Map四种获取key和value值的方法,以及对map中的元素排序(转)
    fastjson使用-- @JSONField使用(转)
    SpringDataJpa——JpaRepository查询功能(转)
    spring接口文档注解:@ApiOperation(转)
    一些专栏
    Redis的那些最常见面试问题(转)
    Java面试通关要点汇总集
  • 原文地址:https://www.cnblogs.com/AThousandMoons/p/14024398.html
Copyright © 2011-2022 走看看