- 贪心算法(一)
cjavacjavacjava
算法POJ贪心
1、poj1700过河问题先排序,然后假设数据为t1t2t3t4t5t6t7t8,只会有两种方式:方式一:最快的两个作为划回的船,两个来回运走两个最慢的,好处是最慢的和次慢的组合消除掉次慢的时间,坏处是往回划的有一半是次快的。时间:t1+2*t2+t8方式二:只有最快的作为划回的船,两个来回运走两个最慢的,好处是往回划的时间是最优的,坏处是往对岸划的次慢的时间也走了。时间:2*t1+t7+t8综合
- poj1700
吹进风里
编程题目
题目描述:一群人过河,过河时间由最慢的人决定,只有一艘船贪心+动态规划dp[i]=min(dp[i-1]+a[0]+a[i],dp[i-2]+a[0]+a[1]*2+a[i])#include#includeusingnamespacestd;inta[1005],dp[1005];intmain(intargc,char**argv){intt,n;cin>>t;while(t--){cin>>
- poj1700(贪心)
刘荣浩
贪心
题目:CrossingRiverTimeLimit:1000MSMemoryLimit:10000KTotalSubmissions:13429Accepted:5129DescriptionAgroupofNpeoplewishestogoacrossariverwithonlyoneboat,whichcanatmostcarrytwopersons.Thereforesomesortofsh
- 【POJ1700】Crossing River 贪心,附贪心问题的一系列详细解析
空灰冰魂
贪心
题意:一群人过河,船每次只能装两人,每次过河时间为两人权值较大的那个。题解:这种题的贪心策略往往不是很好想,这个时候我们就需要依照尽量逼近正解的思路,进行多种贪心,在每种贪心都保证正确的前提下,取多个答案的最值,这样往往就是正解,而即便可以卡,数据也很难出,并不是写个rand+debug拍上两个小时就能拍出来的。而这种多线程贪心可以有两种:一、单独做每种,然后取最优。二、每一步转移都用多种贪心取得
- POJ 1700
vanadia
POJ1700题意n个人要过河,一次只能同时两个人过河,两个人过河的时间取决于慢的一个。求最快的过河的时间思路先对过河速度进行升序排序。然后分两种情况:最快的和最慢的先过去,然后由最快的一个人划回来,再由最快的次慢的,再由最快的划回来.最快的和次快的先划过去,然后由最快的先划回来,再由最慢的和次慢的过去,最后由次快的划回来。通过两种情况把最慢的和次慢的都送过河里,最快的和次快的都没过河。然后开始下
- POJ 1700
vanadia
POJ1700题意n个人要过河,一次只能同时两个人过河,两个人过河的时间取决于慢的一个。求最快的过河的时间思路先对过河速度进行升序排序。然后分两种情况:最快的和最慢的先过去,然后由最快的一个人划回来,再由最快的次慢的,再由最快的划回来.最快的和次快的先划过去,然后由最快的先划回来,再由最慢的和次慢的过去,最后由次快的划回来。通过两种情况把最慢的和次慢的都送过河里,最快的和次快的都没过河。然后开始下
- poj1700过河问题(贪心)
keepcoral
贪心
CrossingRiverTimeLimit:1000MSMemoryLimit:10000KTotalSubmissions:10871Accepted:4097DescriptionAgroupofNpeoplewishestogoacrossariverwithonlyoneboat,whichcanatmostcarrytwopersons.Thereforesomesortofshutt
- 小船过河问题
鼬_神
/*小船过河问题POJ1700是一道经典的贪心算法例题。题目大意是只有一艘船,能乘2人,船的运行速度为2人中较慢一人的速度,过去后还需一个人把船划回来,问把n个人运到对岸,最少需要多久。先将所有人过河所需的时间按照升序排序,我们考虑把单独过河所需要时间最多的两个旅行者送到对岸去,有两种方式:1.最快的和次快的过河,然后最快的将船划回来;次慢的和最慢的过河,然后次快的将船划回来,所需时间为:t[0]
- POJ1700 Crossing River(贪心算法训练)
热爱改名阿呆呆
算法
TimeLimit:1000MSMemoryLimit:10000KTotalSubmissions:13301Accepted:5087DescriptionAgroupofNpeoplewishestogoacrossariverwithonlyoneboat,whichcanatmostcarrytwopersons.Thereforesomesortofshuttlearrangement
- POJ1700 Crossing River
tigerisland45
ICPCriver过河crossing
问题链接:POJ1700。这个问题适合于用贪心法来解决,所以需要对输入的数据事先进行排序。同时还需要考虑特例情况,数据个数小于3的时候,需要特殊处理;数据个数大于3的时候,需要统一处理。假设人数为n,总的过河时间为:n=1时,那个人的过河时间;n=2时,两人中最长的过河时间;n=3时,总时间是三人过河时间之和。过河时间最短的人,先送一个过河,再回去和另外一个一起过河。n>=4时,由过河时间最短的人
- poj1700 贪心算法
charles1e
算法poj
/*poj1700贪心算法问题描述:有n个人要过河,船每次只能两个人,问最短的过河时间。解题思路:======1======t[1]+t[0]+t[i]+t[1]1、让最快和次快先过去,最快的回来2、让最慢的和次慢的一起走,然后次快的回来3、下一次循序。=======2======t[i]+t[0]+t[i-1]+t[0]1、最快的和最慢先过,最快回2、最快和最先过,最快回。*/
#includ
- POJ1700
FlushHip
Problem:CrossingRiverDescription:N个人过河,只有一条船。船到了对岸得有人把船划回来。一条船最多坐两个人,过河的时间以慢的为准,问最少需要多少时间才能把所有的人都送到对岸。Solution:贪心,首先想到的贪心是,时间多的人要带时间次多的人过河,这个很简单想,于是我们要先对时间进行排序。然后就是痛苦的开始了。我开始想着划船肯定要用时间最少的人来划船,于是一直过不了样
- poj1700 poj2573 经典贪心
Summer__show_
412510答案:17 顺序是:1、2去,1回;5、10去;2回;1、2去。1)如果N=1、2,所有人直接过桥。2)如果N=3,由最快的人往返一次把其他两人送过河。3)如果N≥4,设A、B为走得最快和次快的旅行者,过桥所需时间分别为a、b;而Z、Y为走得最慢和次慢的旅行者,过桥所需时间分别为z、y。那么当2b>a+y时,使用模式一将Z和Y移动过桥;当2b<a+y时,使用模式二将Z和Y移动过桥;当2
- poj1700 Crossing River
d_x_d
水
CrossingRiverTimeLimit: 1000MSMemoryLimit: 10000KTotalSubmissions: 12585Accepted: 4787DescriptionAgroupofNpeoplewishestogoacrossariverwithonlyoneboat,whichcanatmostcarrytwopersons.Thereforesomesortofs
- poj1700
poj
此题讲的是N个人过河,每个人都有自己的过河时间,一条船只能承受2个人,所用时间为其中过河时间最多的,所以呢,想到有两种情况,第一种:过河时间最少的人来回接送其他人,第二种:过河时间最少和次少的人来回接送其他人,刚开始就觉得第一种时间必然是最少的,但是仔细想想,不然。因为第一种情况虽然单次过河时间少,但送人的次数要多,如第1个人(过河时间最少)接送第i人 dp[i]=dp[i-1]+time[0]+
- Crossing River poj1700贪心
poj
题目描述:N个人过河,只有一只船,最多只能有两人划船,每个人划船速度不同,船速为最慢的人的速度。输入T为case个数,每个case输入N为人数,接下来一行输入的是每个人过河的时间,都不相同。要求输出N个人全部过河的时间
算法思想:采用贪心的方法。有两种划船的方法,一种是最快+最慢,最快回,最快+次慢,最快回,循环下去;第二种是最快+次快,次快回,最慢+次慢,最快回,循环下去。那么当剩余人数N&g
- poj1700
poj
题意:只有一艘船,能乘2人,船的运行速度为2人中较慢一人的速度,过去后还需一个人把船划回来,问把n个人运到对岸,最少需要多久。
分析:我们设最快的为a,次快的为b,最慢的为z,次慢的为y。
我们先考虑如何将y,z运到对岸,可以ab,a,yz,b,也可以ay,a,az,a。
运送z不可能影响此4人之外的人,因为船只能乘2人,z要带也是带次慢的。
那如果是单运z,然后x和y一起运呢?这种情况是
- POJ1700 经典过河问题(贪心)
poj
题意是N个人过河,船每次只能坐两个人,船载每个人过河的所需时间不同,问最快的过河时间。
解题思路:当n=1,2,3时所需要的最小时间很容易求得,现在由n>=4,假设n个人单独过河所需要的时间存储在数组t中,将数组t按升序排序,那么 这时将单独过河所需要时间最多的两个旅行者送到对岸去,有两种方式: 1> 最快的(即
- poj1700(黑书第二道贪心例题)
poj
题意:有n个人想要过河,但是船只有一条,而且每次只能载两个人,给出n个人过河的时间,两个人一起过河的话,按照花时最多的计算,求所有人都过河所花的最少时间。
思路:一开始我是想,直接用过河时间最少的那个人每次载一个到对面,然后再回来载剩下的,仔细想想,这样不对。然后思考后发现有两种过河策略:
1、用过河时间最少的那个人每次载一个到对面,然后再回来载剩下的;2、用(花时)最少的和次少的循环载人,先
- POJ1700(过河问题)
poj
#include<iostream>
#include<algorithm>
using namespace std;
int n,a[1006];
int main()
{
int t,i;
cin>>t;
while(t--)
{
int f=0;
//每次f归0
- POJ1700:Crossing River(过河问题)
poj
POJ1700
题目链接:http://poj.org/problem?id=1700
Time Limit:1000MS
Memory Limit:10000KB
- poj1700
poj
题目大意: 过河 有N个人想要过河,但是只有一条船,它最多只能携带两个人,因此必须安排有人回来以便让所有的人都过河(要是有人不会来剩下的人就没有船可以过河了),每个人都有不同的划船速度,两个人的划船速度由慢的那个决定,你的工作就是安排怎么使用最少的时间过河。 题目分析: 可以看出来不可能每次都让速度最快的划船,那样太浪费时间,应该让两个速度差别不多的去划船,然后让速度比较快的
- POJ1700:Crossing River
libin56842
poj
DescriptionAgroupofNpeoplewishestogoacrossariverwithonlyoneboat,whichcanatmostcarrytwopersons.Thereforesomesortofshuttlearrangementmustbearrangedinordertorowtheboatbackandforthsothatallpeoplemaycross.
- poj1700
xuezhongfenfei
题意是让n个人过河然后通过的时间最短,而且只有一条船,所以过完河的人还要有一个人将船划会对岸,最开始想到的是让时间最短额人依次配每个人个过河,但是这不是最简单的,因为我们可以设想让时间最长的人和次长的人过河,而让时间最短和次短的人当作不断划船的人。但是,这里涉及了一个比较,就是是让时间最短的人依次配他们过的时间最短还是才用第二种方法,所以这里涉及到一个判断的,代码如下:#include#inclu
- POJ1700 Crossing River 过河问题
Sinchb
IntegerinputeachGooutput
一、题目信息CrossingRiverTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 8897 Accepted: 3323DescriptionAgroupofNpeoplewishestogoacrossariverwithonlyoneboat,whichcanatmostcarrytwopersons.Thereforesome
- poj1700
mtawaken
很自然想到贪心,一种思路是由于必须有人把船开回来,尽量把这个时间缩短,因此总是让最快的陪同最慢的过去,然后最快的驾船回来。但是这样每个比最快的慢的时间都要算进去。于是想到可以让最慢的和次慢的一起走,这样虽然消耗了最慢的时间,但是不用再消耗次慢的时间。这样必须有人把船开回来,而且绝不能是次慢的这个,因此可以先让最快次快的去一次,让最快的回来,次快的留下预备用。这样相当于每次运最慢的之前首先进行一次预
- Crossing River POJ1700
tiantangrenjian
IntegerinputeachGooutput
CrossingRiverTimeLimit: 1000MS MemoryLimit: 10000KTotalSubmissions: 7873 Accepted: 2879DescriptionAgroupofNpeoplewishestogoacrossariverwithonlyoneboat,whichcanatmostcarrytwopersons.Thereforesomesortof
- POJ1700 Crossing River DP
Human_CK
ProblemAddress:http://poj.org/problem?id=1700【思路】dp是O(n)的复杂度。从后往前推,对于每一个人,可以单独一个人过去(此时需要用耗时最小的那个人一起过去,之后那个人自己回来),或者和前一个人一起过去(此时需要耗时最小的两个人一起过去,然后最小那个过来,然后预定好的两个人过去,之后第二小的那个人过来),取其小者。dp[i]=min(dp[i+1]+n
- 过河问题
东方快翔
职场休闲POJ1700过河问题
POJ1700 CrossRiver,一道贪心题,合理选择贪心策略:http://poj.org/problem?id=1700#include#include#include#includeusingnamespacestd;intmain(){ intiCase;cin>>iCase; while(iCase--){ intn;cin>>n; vectorst; for(in
- web前段跨域nginx代理配置
刘正强
nginxcmsWeb
nginx代理配置可参考server部分
server {
listen 80;
server_name localhost;
- spring学习笔记
caoyong
spring
一、概述
a>、核心技术 : IOC与AOP
b>、开发为什么需要面向接口而不是实现
接口降低一个组件与整个系统的藕合程度,当该组件不满足系统需求时,可以很容易的将该组件从系统中替换掉,而不会对整个系统产生大的影响
c>、面向接口编口编程的难点在于如何对接口进行初始化,(使用工厂设计模式)
- Eclipse打开workspace提示工作空间不可用
0624chenhong
eclipse
做项目的时候,难免会用到整个团队的代码,或者上一任同事创建的workspace,
1.电脑切换账号后,Eclipse打开时,会提示Eclipse对应的目录锁定,无法访问,根据提示,找到对应目录,G:\eclipse\configuration\org.eclipse.osgi\.manager,其中文件.fileTableLock提示被锁定。
解决办法,删掉.fileTableLock文件,重
- Javascript 面向对面写法的必要性?
一炮送你回车库
JavaScript
现在Javascript面向对象的方式来写页面很流行,什么纯javascript的mvc框架都出来了:ember
这是javascript层的mvc框架哦,不是j2ee的mvc框架
我想说的是,javascript本来就不是一门面向对象的语言,用它写出来的面向对象的程序,本身就有些别扭,很多人提到js的面向对象首先提的是:复用性。那么我请问你写的js里有多少是可以复用的,用fu
- js array对象的迭代方法
换个号韩国红果果
array
1.forEach 该方法接受一个函数作为参数, 对数组中的每个元素
使用该函数 return 语句失效
function square(num) {
print(num, num * num);
}
var nums = [1,2,3,4,5,6,7,8,9,10];
nums.forEach(square);
2.every 该方法接受一个返回值为布尔类型
- 对Hibernate缓存机制的理解
归来朝歌
session一级缓存对象持久化
在hibernate中session一级缓存机制中,有这么一种情况:
问题描述:我需要new一个对象,对它的几个字段赋值,但是有一些属性并没有进行赋值,然后调用
session.save()方法,在提交事务后,会出现这样的情况:
1:在数据库中有默认属性的字段的值为空
2:既然是持久化对象,为什么在最后对象拿不到默认属性的值?
通过调试后解决方案如下:
对于问题一,如你在数据库里设置了
- WebService调用错误合集
darkranger
webservice
Java.Lang.NoClassDefFoundError: Org/Apache/Commons/Discovery/Tools/DiscoverSingleton
调用接口出错,
一个简单的WebService
import org.apache.axis.client.Call;import org.apache.axis.client.Service;
首先必不可
- JSP和Servlet的中文乱码处理
aijuans
Java Web
JSP和Servlet的中文乱码处理
前几天学习了JSP和Servlet中有关中文乱码的一些问题,写成了博客,今天进行更新一下。应该是可以解决日常的乱码问题了。现在作以下总结希望对需要的人有所帮助。我也是刚学,所以有不足之处希望谅解。
一、表单提交时出现乱码:
在进行表单提交的时候,经常提交一些中文,自然就避免不了出现中文乱码的情况,对于表单来说有两种提交方式:get和post提交方式。所以
- 面试经典六问
atongyeye
工作面试
题记:因为我不善沟通,所以在面试中经常碰壁,看了网上太多面试宝典,基本上不太靠谱。只好自己总结,并试着根据最近工作情况完成个人答案。以备不时之需。
以下是人事了解应聘者情况的最典型的六个问题:
1 简单自我介绍
关于这个问题,主要为了弄清两件事,一是了解应聘者的背景,二是应聘者将这些背景信息组织成合适语言的能力。
我的回答:(针对技术面试回答,如果是人事面试,可以就掌
- contentResolver.query()参数详解
百合不是茶
androidquery()详解
收藏csdn的博客,介绍的比较详细,新手值得一看 1.获取联系人姓名
一个简单的例子,这个函数获取设备上所有的联系人ID和联系人NAME。
[java]
view plain
copy
public void fetchAllContacts() {
 
- ora-00054:resource busy and acquire with nowait specified解决方法
bijian1013
oracle数据库killnowait
当某个数据库用户在数据库中插入、更新、删除一个表的数据,或者增加一个表的主键时或者表的索引时,常常会出现ora-00054:resource busy and acquire with nowait specified这样的错误。主要是因为有事务正在执行(或者事务已经被锁),所有导致执行不成功。
1.下面的语句
- web 开发乱码
征客丶
springWeb
以下前端都是 utf-8 字符集编码
一、后台接收
1.1、 get 请求乱码
get 请求中,请求参数在请求头中;
乱码解决方法:
a、通过在web 服务器中配置编码格式:tomcat 中,在 Connector 中添加URIEncoding="UTF-8";
1.2、post 请求乱码
post 请求中,请求参数分两部份,
1.2.1、url?参数,
- 【Spark十六】: Spark SQL第二部分数据源和注册表的几种方式
bit1129
spark
Spark SQL数据源和表的Schema
case class
apply schema
parquet
json
JSON数据源 准备源数据
{"name":"Jack", "age": 12, "addr":{"city":"beijing&
- JVM学习之:调优总结 -Xms -Xmx -Xmn -Xss
BlueSkator
-Xss-Xmn-Xms-Xmx
堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:
java -Xmx355
- jqGrid 各种参数 详解(转帖)
BreakingBad
jqGrid
jqGrid 各种参数 详解 分类:
源代码分享
个人随笔请勿参考
解决开发问题 2012-05-09 20:29 84282人阅读
评论(22)
收藏
举报
jquery
服务器
parameters
function
ajax
string
- 读《研磨设计模式》-代码笔记-代理模式-Proxy
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
/*
* 下面
- 应用升级iOS8中遇到的一些问题
chenhbc
ios8升级iOS8
1、很奇怪的问题,登录界面,有一个判断,如果不存在某个值,则跳转到设置界面,ios8之前的系统都可以正常跳转,iOS8中代码已经执行到下一个界面了,但界面并没有跳转过去,而且这个值如果设置过的话,也是可以正常跳转过去的,这个问题纠结了两天多,之前的判断我是在
-(void)viewWillAppear:(BOOL)animated
中写的,最终的解决办法是把判断写在
-(void
- 工作流与自组织的关系?
comsci
设计模式工作
目前的工作流系统中的节点及其相互之间的连接是事先根据管理的实际需要而绘制好的,这种固定的模式在实际的运用中会受到很多限制,特别是节点之间的依存关系是固定的,节点的处理不考虑到流程整体的运行情况,细节和整体间的关系是脱节的,那么我们提出一个新的观点,一个流程是否可以通过节点的自组织运动来自动生成呢?这种流程有什么实际意义呢?
这里有篇论文,摘要是:“针对网格中的服务
- Oracle11.2新特性之INSERT提示IGNORE_ROW_ON_DUPKEY_INDEX
daizj
oracle
insert提示IGNORE_ROW_ON_DUPKEY_INDEX
转自:http://space.itpub.net/18922393/viewspace-752123
在 insert into tablea ...select * from tableb中,如果存在唯一约束,会导致整个insert操作失败。使用IGNORE_ROW_ON_DUPKEY_INDEX提示,会忽略唯一
- 二叉树:堆
dieslrae
二叉树
这里说的堆其实是一个完全二叉树,每个节点都不小于自己的子节点,不要跟jvm的堆搞混了.由于是完全二叉树,可以用数组来构建.用数组构建树的规则很简单:
一个节点的父节点下标为: (当前下标 - 1)/2
一个节点的左节点下标为: 当前下标 * 2 + 1
&
- C语言学习八结构体
dcj3sjt126com
c
为什么需要结构体,看代码
# include <stdio.h>
struct Student //定义一个学生类型,里面有age, score, sex, 然后可以定义这个类型的变量
{
int age;
float score;
char sex;
}
int main(void)
{
struct Student st = {80, 66.6,
- centos安装golang
dcj3sjt126com
centos
#在国内镜像下载二进制包
wget -c http://www.golangtc.com/static/go/go1.4.1.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.4.1.linux-amd64.tar.gz
#把golang的bin目录加入全局环境变量
cat >>/etc/profile<
- 10.性能优化-监控-MySQL慢查询
frank1234
性能优化MySQL慢查询
1.记录慢查询配置
show variables where variable_name like 'slow%' ; --查看默认日志路径
查询结果:--不用的机器可能不同
slow_query_log_file=/var/lib/mysql/centos-slow.log
修改mysqld配置文件:/usr /my.cnf[一般在/etc/my.cnf,本机在/user/my.cn
- Java父类取得子类类名
happyqing
javathis父类子类类名
在继承关系中,不管父类还是子类,这些类里面的this都代表了最终new出来的那个类的实例对象,所以在父类中你可以用this获取到子类的信息!
package com.urthinker.module.test;
import org.junit.Test;
abstract class BaseDao<T> {
public void
- Spring3.2新注解@ControllerAdvice
jinnianshilongnian
@Controller
@ControllerAdvice,是spring3.2提供的新注解,从名字上可以看出大体意思是控制器增强。让我们先看看@ControllerAdvice的实现:
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Component
public @interface Co
- Java spring mvc多数据源配置
liuxihope
spring
转自:http://www.itpub.net/thread-1906608-1-1.html
1、首先配置两个数据库
<bean id="dataSourceA" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close&quo
- 第12章 Ajax(下)
onestopweb
Ajax
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- BW / Universe Mappings
blueoxygen
BO
BW Element
OLAP Universe Element
Cube Dimension
Class
Charateristic
A class with dimension and detail objects (Detail objects for key and desription)
Hi
- Java开发熟手该当心的11个错误
tomcat_oracle
java多线程工作单元测试
#1、不在属性文件或XML文件中外化配置属性。比如,没有把批处理使用的线程数设置成可在属性文件中配置。你的批处理程序无论在DEV环境中,还是UAT(用户验收
测试)环境中,都可以顺畅无阻地运行,但是一旦部署在PROD 上,把它作为多线程程序处理更大的数据集时,就会抛出IOException,原因可能是JDBC驱动版本不同,也可能是#2中讨论的问题。如果线程数目 可以在属性文件中配置,那么使它成为
- 推行国产操作系统的优劣
yananay
windowslinux国产操作系统
最近刮起了一股风,就是去“国外货”。从应用程序开始,到基础的系统,数据库,现在已经刮到操作系统了。原因就是“棱镜计划”,使我们终于认识到了国外货的危害,开始重视起了信息安全。操作系统是计算机的灵魂。既然是灵魂,为了信息安全,那我们就自然要使用和推行国货。可是,一味地推行,是否就一定正确呢?
先说说信息安全。其实从很早以来大家就在讨论信息安全。很多年以前,就据传某世界级的网络设备制造商生产的交