
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、三臂起重机(TRO)三臂起重机用来为货车装载货物。假设车厢已经按照1,2,3,编号,每一节车厢上仅可以放入一集装箱的货物。三臂起重机的工作方法很简单。它每次可以从仓库中吊出三箱货物,把它们放到编号为(i,i+p,i+p+q),或者编号为(i,i+q,i+p+q)的三节车厢中。p,q已知,且p,q1。现在我们的目的是把编号为1,2,n的车厢全部装满货物,且已知货车恰有n+p+q节车厢。为了完成这个任务,我们必须为起重机安排一个装运程序,程序中包含若干行,每一行含有三个数字x、y、z,满足1xyzn+p+q,表示此次吊起的三件货物分别放到了编号为x、y、z的车厢中。你的程序输出正确当且仅当按照输出
2、安排的吊运方法可以把编号为1,2,n的n节车厢全部装满,且每一节车厢至多装载了一箱货物。输入输入文件TRO.IN仅包含一行,这一行有三个数字p,q,n,分别是三臂起重机运货的两个参数以及需要装货的车厢数。1n300000,2p+q60000。输出输出文件TRO.OUT包含若干行,第一行为一个数字m,表示三臂起重机的装箱次数。其后有m行,每一行包含三个数字x、y、z,即为每次吊起的三间货物装入的车厢编号。容易知道,yx+p,x+q,z=x+p+q。输入样例2 3 10输出样例41 3 62 4 75 8 109 11 14TRO解题报告问题描述这是Poi2000 stage 2的一道题目。题目的
3、大意是给出了三个数p、q、n,要构造若干个三元组,要符合以下四个要求:(1)三元组必须具备形式(i,i+p,i+p+q)(i,i+q,i+p+q)之一。(2)所有三元组中的元素不得超过n+p+q。(3)1,2,n+p+q这n+p+q个数每个至多出现一次。(4)这些三元组必须涵盖1,2,n这n个自然数。n=300000,p+q=60000。算法分析初看此题,感觉数学味颇浓。题目虽然以“起重机”“装载”作为背景,但是剥去这层伪装后,我们就可以用熟悉的数学语言来加以描述了。由于n,p+q的范围比较大,我们想到用效率较高、复杂度低的构造法来解决。假设我们已经构造了若干个符合条件的三元组,如果1,2,n
4、都已经出现过则终止,否则下一步我们取出未出现过的最小的自然数x,显然xn。由于前面所有的三元组的第一个数都小于x(由构造方法易知),所以这些三元组中的元素都不超过x-1+p+q,那么x+p+q肯定没有出现过。我们的问题转化成为决定(x,?,x+p+q)中的?。一个最简单的想法是:首先尝试x+p,若没有出现过则取?=x+p,否则取?=x+q。这样做的疑点在于:是否会出现x+p、x+q都出现过无法选择的情形呢?看下面这个例子:p=3,q=2首先取没有出现过的最小自然数1,构造出三元组(1,4,6),接下来又构造出(2,5,7),这是没有出现过的最小数为3,但是3+3=6,3+2=5均已出现在前面三
5、元组中,无法选择了。这样构造宣告失败。换一个角度。P与q的地位是对称的,我们不妨假设p=q,则交换它们,不影响结果。在上面的例子中,我们会取p=2,q=3。则构造的过程为(1,3,6),(2,4,7),(5,8,10),(9,11,14)尝试了很多次,我们发现:这样做就没有反例了。于是猜想:当p=q时,上面的构造方法是正确的。下面我们来证明这一点。假设已经构造了s个三元组,分别为(),(,。我们取这些三元组中没有出现过的最小元素r,证明r+p,r+q不可能同时被使用过。采用反证法。若它们均出现过,则有如下两种情况:r+q=+p(1=i=p,则p-q=0,r=+p-q=,由于每次取的都是未出现过的最小自然数,矛盾!r+q=+p+q(1=i=s),推出r=+p,若=+p,则r=已经出现过,矛盾。故=+q,由我们选取的规则可知,+p已经出现过(否则会选择+p而不是+q),这又与r=+p没有出现过矛盾。综上,我们可知,r+q一定没有出现过,即不会有两种选择都违反规则的情形出现。至此,算法得证。小结本题采用的构造法在近年来的竞赛中并不多见,它的优点是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园主题活动教学计划
- 传统艺术技法在现代教学中的应用计划
- 拥抱变化秘书工作的新趋势计划
- 优化供应链管理流程计划
- 教材与教具更新与选用方案计划
- 前台文员团队协作提升计划
- 幼儿园实践活动的设计与反思计划
- 2025年离婚协议债权模板
- Unit 2 What's your name?表格式(教学设计)-2024-2025学年湘少版(三起)(2024)英语三年级上册
- 激励团队成员的有效方法计划
- 中职《基础化学》对口高考备考试题(附答案)
- 第 4 单元评估检测题 单元测试(无答案)2024-2025学年一年级下册数学北师大版
- 2025年无锡南洋职业技术学院单招职业技能测试题库完美版
- 2025年皖北卫生职业学院单招职业适应性测试题库必考题
- 江苏省G4学校高三语文2月联考试卷及答案
- 2025年江西省三支一扶招聘2209人高频重点模拟试卷提升(共500题附带答案详解)
- 2025年甘肃省建设监理有限责任公司招聘笔试参考题库含答案解析
- 2023年江苏省五年制专转本英语统考真题(试卷+答案)
- 酒店概论教案
- SMT钢网管理规范
- 4临床重点专科申报书麻醉、病理、检验
评论
0/150
提交评论