#P2604. Preparing an article

    ID: 1605 传统题 1000ms 256MiB 尝试: 3 已通过: 1 难度: 10 上传者: 标签>字符串Ural State University collegiate programming contest 2000

Preparing an article

题目描述

TeX 是数学、科学与工程领域领先的排版系统,并被美国数学学会采纳为标准。LaTeX 由 Leslie Lamport 基于 TeX 开发,提供了一套更高级的命令用于生成复杂文档。在 TeX 或 LaTeX 中,可以使用任何文本编辑器输入和修改源文件。源文件包含实际文本以及以反斜杠\开头的格式化命令。命令由任意非字母字符界定。TeX 的一个美化功能是使用两个左单引号 `` 和两个右单引号 '' 来界定引号,而非键盘上常见的单个双引号 "。键盘通常没有方向性的双引号,但有左单引号 ` 和右单引号 '。TeX 允许用户输入两个左单引号(``)表示左双引号,两个右单引号('')表示右双引号。

现在,你有一个纯文本文件(最多 250250 行,每行最多 8080 个字符),作为 TeX 的输入源文件。你希望用 TeX 美化它,但不想手动操作,而是编写程序自动完成第一步:将双引号 " 转换为 TeX 要求的双字符序列。具体规则如下:

  1. 第一个 " 替换为 ``,第二个 " 替换为 '',第三个 " 替换为 ``,第四个 " 替换为 '',以此类推。
  2. 开引号 `` 必须与闭引号 '' 在同一个段落内匹配。如果某开引号在段落内没有对应的闭引号,则该引号需被删除。
  3. 段落的结束由至少一个空行或 \par 命令(或两者)标记。
  4. 需注意 \" 命令(用于生成变音符号,如 \"e 生成 ë),这些内容应保持不变。

输入格式

输入包含多行文本,其中包含若干双引号 " 以及一些 TeX 命令。输入以\endinput\endinput 命令结束。

输出格式

输出应与输入完全相同,但双引号需按上述规则替换为 TeX 风格的引号。

输入样例 1

There is no "q in this sentence. \par 
"Talk child," said the unicorn. 

She s\"aid, "\thinspace `Enough!', he said." 
\endinput 

输出样例 1

There is no q in this sentence. \par 
``Talk child,'' said the unicorn. 

She s\"aid, ``\thinspace `Enough!', he said.'' 
\endinput 

提示

  • 双引号 " 的 ASCII 码为 3434
  • 左单引号 ` 的 ASCII 码为 9696
  • 右单引号 ' 的 ASCII 码为 3939

来源
Ural State University collegiate programming contest 2000