NOIP2012 提高组 Day1:Vigenère密码、国王游戏、开车旅行

需积分: 7 0 下载量 181 浏览量 更新于2024-09-14 收藏 665KB PDF 举报
"NOIP2012 提高组 DAY1比赛内容,涉及三道题目:Vigenère密码、国王游戏、开车旅行。每道题目都有对应的编程语言源代码文件名、输入输出文件名、编译命令以及运行内存限制。比赛对程序的返回值类型、文件命名、内存使用等有特定要求,所有程序将在NOILinux环境下进行评测。" 全国信息学奥林匹克联赛(NOIP)是一项旨在发掘和培养青少年计算机科学能力的比赛。2012年的提高组复赛,第一天的比赛包含了三道题目,分别是Vigenère密码、国王游戏和开车旅行。这些题目都是传统类型的,需要参赛者编写程序来解决。 1. **Vigenère密码**: Vigenère密码是一种古典密码学方法,由16世纪的法国外交官Blaise de Vigenère发明。它是一种多表密码,使用一个关键词对明文进行加密,形成密文。在比赛中,选手可能需要实现一个程序,能够接受一个明文字符串和一个关键词,然后根据Vigenère密码算法进行加密和解密。这需要参赛者理解加密原理,并能将其转化为有效的算法实现。 2. **国王游戏**: 这个游戏的具体细节未给出,但通常在编程竞赛中,"国王游戏"可能涉及到策略或逻辑推理。可能需要参赛者设计一个程序,模拟游戏规则并做出最优决策。这可能涉及到搜索算法、博弈论或动态规划等知识。 3. **开车旅行**: 这个题目可能与图论或路径规划相关。参赛者可能需要编写一个程序,解决最短路径问题或者在特定条件下的旅行安排。这可能需要用到Dijkstra算法、A*搜索算法或者其他图算法。 每道题目的源代码需要按照指定的语言和文件名编写,如C++的cpp文件、C的c文件或Pascal的pas文件。同时,输入输出文件名也有规定,例如vigenere.in和vigenere.out。编译命令使用了g++或gcc(对于C++和C),而fpc用于Pascal语言,且需要链接数学库(-lm)。程序运行内存限制为128MB,且必须在NOILinux环境中进行评测。 比赛特别强调,程序的main函数返回值类型必须为int,正常结束时应返回0,且文件名必须使用英文小写字母。评测环境是基于Intel Core2 Quad Q8200 2.33GHz CPU和2GB内存的系统。这些规定确保了所有参赛作品在相同条件下公平竞争。