信息学集训队作业stoneage.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

石器时代

StoneAge

(stoneage.pas/p)

1问题描述

借助月光宝盒,探险家尼克来到了石器时代。在热闹的石器时代广场上,不同

部落的原始人来来往往进进出出。但是,石器时代是非常容易爆发的。冲

突爆发时,总是处于绝对优势地位的部落获胜。某一时刻一个部落在时代广场

上有“绝对优势”是指该时刻在广场上此部落的人数比其他部落的人数之和还要

大。出于安全考虑,尼克非常迫切希望知道目前在时代广场上哪个部落有绝对

优势。非常不幸的是尼克只能判断两个原始人是不是属于一个部落。你的任务

就是协助尼克!

2交互约定

本题是交互式问题,你需要和调用库函数来完成输入输出。你得到的库包含如

下几个函数:

•init:初始化函数。只能在调用其它函数前调用,且仅能被调用一次。调

用后石器时代广场被清空。

•getjob为了得到广场上原始人的更新情况,你应该调用本函数。本函数返

回值作如下规定:

–0:表示一个原始人进入了广场;

–一个正整数i:表示第i个进入广场原始人离开了广场;

–-1:表示尼克需要知道当前广场上哪个部落有绝对优势。在下一次

调用本函数前你必须调用且仅调用一次answer函数作为回答;

–-2:表示任务完成。此后不应该有任何其他库函数调用。你的程序

应该马上。

•query(i,j)调用init以后的任何时候你可以调用本函数。本函数测试第i个进

入广场的和第j个进入广场的原始人是不是属于同一个部落,返回TRUE表示

属于同一部落,否则返回FALSE。

•answer(i)i是你的回答。如果目前有部落处于绝对优势地位,则第i个入场

的原始人应该属于该部落并且仍然在场上(i可以是他们中任何一个的入

场序号);如果目前任何一个部落都没有绝对优势,i应该等于0。

1

3库函数定义

对使用pascal语言的选手,Unitstonelib定义如下函数:

•procedureinit;

•functiongetjob:longint;

•functionquery(i,j:longint):boolean;

•procedureanswer(ans:longint);

对使用C/C++语言的选手,stonelib.h定义如下函数:

•voidinit();

•longgetjob();

•boolquery(longi,longj);

•voidanswer(longans);

4交互样例

调用返回解释

initN/A程序初始化,石器时代广场上一个人也没有。

getjob0原始人A第一个进入广场。

getjob0原始人B第二个进入广场。

query(1,2)false查询原始人A和B,发现他们不属于同一个部落。

getjob-1询问:当前存在占绝对优势的部落吗?

answer(0)N/A显然不存在。以0作为回答。

getjob0原始人C第三个进入广场。

getjob-1再次询问是否存在占绝对优势的部落。

query(3,2)true查询C和B,发现他们属于同一个部落。

answer(3)N/A3和2都是占绝对优势的部落的成员,回答其中任何一个即可。

getjob2原始人B离开了广场。

getjob-1再次询问。

answer(0)N/A当前不存在占绝对优势的部落。

getjob1原始人A离开了广场。

getjob-2

文档评论(0)

187****4471 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档