您好,欢迎光临本网站![请登录][注册会员]  
文件名称: 10347忙碌又贪心的泥瓦匠
  所属分类: C/C++
  开发工具:
  文件大小: 22kb
  下载次数: 0
  上传时间: 2013-12-07
  提 供 者: jo***
 详细说明: 10347 忙碌又贪心的泥瓦匠 时间限制:1000MS 内存限制:1000K 提交次数:8 通过次数:4 题型: 编程题 语言: 无限制 Description 村里有唯一一个泥瓦匠叫Kemo,很多人需要找Kemo修房子、修灶台、造花园……等,大家可以向Kemo预约修葺的时间和工钱。 现在情况是: 1)Kemo只有一个人,不能同时为两个雇主工作 2)Kemo只有干完一个雇主家的活才可以在接下来的一天切换到另一个雇主家里干活。未干完一份活不可以离开,不可以为多位雇主交叉时间干活 3)Kemo如果不能在预约的时间那天应约的话,这个雇主的这份钱就挣不到了 Kemo比较聪明,他把大家的预约收集好,想让自己忙碌一阵子,赚最多的钱。现在请你为这个忙碌而又贪心的Kemo设计一个思路吧。 Input 输入4行: 第一行,一个数字,n,表示n个人向Kemo预约需要修葺(n<=100) 第二行,n个正数,表示这n个人所需完成修葺的时间的起始点。若时间点为8,表示第8天开始 第三行,n个正数,表示这n个人所需完成修葺的工程天数。若天数为3,表示这一工程必须维持3天完成(所有工程都可以在第1000天内完成,即起始点+工期<=1000) 第四行,n个正数, 表示这n个人能向Kemo付出的工钱,工钱以每天计 Output 输出:忙完这阵子,Kemo最多能挣多少钱? 例如:4个人需要找Kemo修葺,起始时间、工期和每天的工钱分别是: 1 3 8 4 3 2 3 2 5 6 10 7 则:Kemo可以获得的最大收益为:5*3+10*3+7*2 = 59 Sample Input 4 1 3 8 4 3 2 3 2 5 6 10 7 Sample Output 59 Hint 此题标题虽有“贪心”,但勿掉入贪心的陷阱中哦(贪心法是解不了滴)。 每项工程有“起始时间”,“工期”和“工钱数”三个性质。若两个工程的从起始时间到结束都不相冲突,就定义这两个工程为“相容工程”。 做子集树,根结点为第1层,叶节点为n+1层。子集树的第i层结点的两个分支代表第i个工程选或者不选。 用回溯算法搜索这n+1层的完全二叉树。 1)若当前工程和之前已选的工程集合不相容,则剪去该分支,不进行该分支之下的搜索,返回到上层结点。 2)将所有满足相容性的可行的叶节点,计算获得的最大工钱数。 ...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: 10347
 输入关键字,在本站1000多万海量源码库中尽情搜索: