POJ 1042 Gone Fishing【枚举+贪心】

题意: 有 n 个池塘,只能从第一个池塘开始走,可以在每个池塘中钓鱼,而且知道了每个池塘每五分钟钓鱼的数量都会下降一定额数值,且从池塘到下一个池塘之间都有一定的距离,知道了每个池塘走到下一个池塘的时间和每个池塘一开始能够钓鱼的数量,求在规定的时间内所能钓的最多的鱼的数量。

分析: 枚举以每个池塘为终点的情况,找到最大值。

          有个注意的地方就是,没枚举一个终点,先把这段路的每个间隔所花时间去掉,这样就可以每次贪心去找单位时间可以钓最多的鱼了,而且可以保证贪心到最后可以找到最优解。

#include<cstdio>
#include<cstring>
#define clr(x)memset(x,0,sizeof(x))
struct node
{int f;    //  开头 5 分钟钓的鱼数量 int d;    //  每五分钟减少的数量int dis;  //  到下一个池塘的时间
}l[202];
int a[202];   //  保存每个池塘一开始可以钓的鱼  
int tim[202][2500];
int res[202];
int main()
{int n,i,j,k,t,tot,tt,max;while(scanf("%d",&n),n){clr(a);clr(tim);clr(res);scanf("%d",&t);tot=t*12;for(i=0;i<n;i++)scanf("%d",&l[i].f);for(i=0;i<n;i++)scanf("%d",&l[i].d);for(i=0;i<n-1;i++)scanf("%d",&l[i].dis);for(i=0;i<n;i++){t=tot;for(j=0;j<i;j++)t-=l[j].dis;for(j=0;j<=i;j++)a[j]=l[j].f;for(j=0;j<t;j++){max=a[0];tt=0;for(k=0;k<=i;k++)if(a[k]>max){max=a[k];tt=k;}a[tt]-=l[tt].d;res[i]+=max;if(a[tt]<0)a[tt]=0;tim[i][tt]++;}}max=res[0];tt=0;for(i=1;i<n;i++)if(res[i]>max){max=res[i];tt=i;}for(i=0;i<n-1;i++)printf("%d, ",tim[tt][i]*5);printf("%d\n",tim[tt][i]*5);printf("Number of fish expected: %d\n\n",max);}return 0;
}

 

 

转载于:https://www.cnblogs.com/dream-wind/archive/2012/07/27/2612598.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/266952.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

制作镜像包时遇到的模块加载错误的问题

最近遇到一个问题&#xff0c;定制的一个镜像包&#xff0c;在启动后&#xff0c;发现有些内核模块加载是错误的&#xff0c;有些是正确的。使用modinfo去查询&#xff0c;可以看到加载的为内核版本中的模块&#xff08;非自己定制的模块&#xff09;&#xff0c;而有些自己新增…

oracle11g导出dmp文件 少表,Oracle11g导出dmp并导入Oracle10g的操作记录

Oracle11g导出dmp并导入Oracle10g的操作记录。操作环境说明&#xff1a;Oracle11g环境&#xff1a;Windows7&#xff0c;Oracle Database 11g Enterprise Edition Release 11.2.0.1.0&#xff0c;ZHS16GBK。Oracle10g环境&#xff1a;中标麒麟&#xff0c;Oracle Database 10g …

GitLab常用命令

进入本地仓库访问位置之后执行命令1) 远程仓库相关命令 检出仓库&#xff1a;$ git clone git://github.com/jquery/jquery.git 查看远程仓库&#xff1a;$ git remote -v 添加远程仓库&#xff1a;$ git remote add [name] [url] 删除远程仓库&#xff1a;$ git remote rm [na…

完整国内城市js级联选择

js代码: View Code var china [//直辖市[北京市],[上海市],[天津市],[重庆市],//华北地区[河北省,石家庄,唐山,秦皇岛,邯郸,邢台,保定,张家口,承德,沧州,廊坊,衡水],[山西省,太原,大同,阳泉,长治,晋城,朔州,晋中,运城,忻州,临汾,吕梁],[内蒙古自治区,呼和浩特,包头,乌海,赤峰…

oracle服务器找不到怎么解决,简析Oracle数据库常见问题及解决方案

Oracle数据库在使用的过程中常常会遇到这样或那样的问题&#xff0c;而这些问题常常又使我们感到很困惑&#xff0c;本文我们总结了Oracle数据库在使用过程中的一些问题&#xff0c;并给出了解决方法&#xff0c;下面我们就开始分析一下这些问题。一、oracle监听启动后&#xf…

Introspector内省和反射的区别.

Introspector 是一个专门处理bean的工具类.用来获取Bean体系里的 propertiesDescriptor,methodDescriptor. 要理解这个,就要理解下面几个议题. *bean是啥?普通的class 可能有 computerAges(){ }等方法.Bean是 一个field ,有 get 或者set. 除了这些别无其他.bean是class的一种例…

Akka2使用探索2(Con?guration)

akka2使用Typesafe Config库&#xff0c;可以使用ConfigFactory.load()加载配置文件&#xff0c;默认加载classpath下的application.conf, application.json and application.properties文件。ActorSystem将会把这些配置和reference.conf合并&#xff08;merge&#xff09;起来…

oracle查看用户路径,oracle 查看用户的表空间,表空间路径,角色,权限

查看当前用户的缺省表空间select username,default_tablespace from user_users;--XUSER XUSER_DATA查询表空间 含临时表空间select tablespace_name from dba_tablespaces;--XUSER_TEMP--XUSER_DATA查询表空间的路径select name from v$datafile--/u01/app/oracle/oradata/orc…

302重定向问题

在把原有的项目迭代以后出现了访问原有域名&#xff1a; abc.dex 不能访问的情况&#xff08;注意&#xff1a;这种情况时而能访问&#xff0c;时而不能访问&#xff09; 必须访问&#xff1a;abc.dex /login.index才能登陆 下面是抓取网络状态的截图&#xff1a; SLB在做…

项目中遇到的ORA error 及解决办法 ---ora-07445

目的 本文档主要介绍ora-07445错误相关内容&#xff0c;并给出了对这个错误的进一步诊断建议&#xff0c;文档主要基于unix系统编写&#xff0c;但原理通用。 文档适用范围 主要为DBA处理系统的ora-07445错误时使用。 0ra-07445错误的定义 当oracle服务器进程从操作系统收到一个…

oracle 不等于某类,Oracle如何查询不等于某数值

前言今天在使用Oracle查询“不等于”的时候&#xff0c;发现得到的数据与期望中的不一样&#xff0c;进一步查找资料才有发现。1、Oracle的不等于在Oracle中&#xff0c;"<>"、"!"、"^"都是表示“不等于”&#xff0c;都可以拿来使用。但是…

ASP.NET学习笔记

1.Asp.Net中几种相似的标记符号: < %...%>< %#... %>< % %>< % %>解释及用法 < %#... %>: 是在绑定控件DataBind()要领 执行时被执行&#xff0c;用于数据绑定 如: < %# Container.DataItem("tit") %> < % %>: 在程序执行…

2017级面向对象程序设计——团队作业1

这是一股来自青青草原的神秘力量 团队信息 团队名称 青青草原战队队伍成员 阮君曦 031702116(队长)史恩泽 031702122蓝飞鹏 031702112张凌昕 031702105林鑫 031702138团队合照人物属性 阮君曦&#xff08;懒羊羊&#xff09; 风格&#xff1a; 一旦进入学习状态便一发不可收拾。…

oracle使用sql文件创建表,使用SQL*Loader创建外部表之一

使用SQL*Loader创建外部表&#xff1a;---创建目录对象并授权给Scott用户&#xff1a;SQL> create or replace directory loader_home as /home/oracle/dirhome;Directory created.--授权&#xff1a;SQL> grant read,write on directory loader_home to scott;Grant suc…

添加错误debug信息

http://hi.baidu.com/wei_1123/item/4218b2f704976cd66225d2d8 常常程式一長&#xff0c;哪邊就不小心多release了一次這時候編譯器就只會告訴你&#xff1a;BAD_ACCESS&#xff0c;然後程式就死了剛開始會google到去Argument加個NSZombieEnabled YES會多吐一點東西讓你把bug除…

雅礼集训 2017 Day1

T1&#xff1a;loj 6029 市场 题目大意&#xff1a; 维护一个数据结构支持区间加 区间除法 区间求最小值 区间求和 思路&#xff1a; 用线段树维护区间加 区间求最小值 区间和 对于区间除法 注意到除数d很大而加法的w很小 尝试将区间除法变成区间减法 可以转化成减法的情况就是…

oracle linux6 u盘安装,Oracle Enterprise Linux/Redhat Linux 6.0 U盘安装方法

多灾多难的Fedora 15安装史&#xff1a;第一天方法1 使用UltraISO直接将ISO写入硬盘映像。。结果无法启动方法2 使用liveusb-creatorFedora 15 64位 Live CD 光标永远停留在左上角。无法引导。。方法3 syslinux &#xff0c;然后自己写个菜单 加载 linux askmethod 结果提示需…

多行文本框

2019独角兽企业重金招聘Python工程师标准>>> #-*- coding: UTF-8 -*- import wxclass TextFrame(wx.Frame):def __init__(self):wx.Frame.__init__(self,None,-1,u多行文本框,size(250,150))panelwx.Panel(self,-1)multiTextwx.TextCtrl(panel,-1,"Python is a…

免oracle客户端下载,Oracle免安装客户端

我们要连接oracle经常需要安装庞大的oracle客户端&#xff0c;很占用硬盘空间&#xff0c;所以我们通过下面的设置就可以在不安装客户端的情况下连接到oracle。首先需要下载Oracle Client Package(免安装包)从http://www.oracle.com/technology/software/tech/oci/instantclien…

tar命令详解

tar [-cxt zjvfpPN] 文件 目录 -c &#xff1a;建立一个压缩文件的参数指令(create 的意思)&#xff1b; -x &#xff1a;解开一个压缩文件的参数指令&#xff01; -t &#xff1a;查看 tarfile 里面的文件&#xff01; 在参数的下达中&#xff0c; c/x/t 仅能存在一个&a…