链接

A,B为最快和次快

有两种方式可以使c,d过桥

一是a与c一起走,a回来接d再与d一起走,一直到对岸人为0为止

而是 a与b一起走 a回来送灯 c与d一起走 b回来送灯 重复此过程。

只剩2人时  直接过桥

3 人时  A回来送灯 ac走 a回来送灯 ab走

 #include <iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<stdlib.h>
#include<vector>
#include<cmath>
#include<queue>
#include<set>
using namespace std;
#define N 1010
#define LL long long
#define INF 0xfffffff
const double eps = 1e-;
const double pi = acos(-1.0);
const double inf = ~0u>>;
int a[N];
int main()
{
int i,n;
while(cin>>n)
{
for(i = ; i <= n;i++)
cin>>a[i];
if(n==)
{
cout<<a[]<<endl;
cout<<a[]<<endl;
continue;
}
sort(a+,a+n+);
int g = n;
int ans = ;
while(g>)
{
int s = min(a[g]+a[g-]+*a[],a[]*+a[g]+a[]);
ans+=s;
g-=;
}
if(g==)
ans+=a[]+a[]+a[g];
else if(g==)
ans+=a[];
cout<<ans<<endl;
g = n;
while(g>)
{
int s = a[g]+a[g-]+*a[];
if(s>a[]*+a[g]+a[])
printf("%d %d\n%d\n%d %d\n%d\n",a[],a[],a[],a[g-],a[g],a[]);
else
printf("%d %d\n%d\n%d %d\n%d\n",a[],a[g],a[],a[],a[g-],a[]);
g-=;
}
if(g==)
printf("%d %d\n%d\n%d %d\n",a[],a[g],a[],a[],a[]);
else if(g==)
printf("%d %d\n",a[],a[]);
}
return ;
}

poj2573Bridge(过桥问题)的更多相关文章

  1. [BZOJ2072][POI2004] MOS过桥

    Description 一个夜晚一些旅行者想要过桥. 他们只有一个火把. 火把的亮光最多允许两个旅行者同时过桥. 没有火把或者多于2个人则不能过桥.每个旅行者过桥都需要特定的时间, 两个旅行者同时过桥 ...

  2. vijos[1355]车队过桥问题

    描述 现有N辆车要按顺序通过一个单向的小桥,由于小桥太窄,不能有两辆车并排通过.另外,由于小桥建造的时间已经很久,只能承受有限的重量,记为Max(吨).管理员将N辆车按初始的顺序分组,每次让一个组过桥 ...

  3. 杂题_POJ上的过桥问题

    本文出自:http://blog.csdn.net/svitter 过桥问题解释:一条船能够坐两个人,可是有非常多人要过河,所以送过一个人去,还有一个人还要回来接.使全部人过河之后时间最短,怎样求? ...

  4. POJ2573 Bridge 经典的过桥问题

    曾经遇到过类似的.纪念一下!这题同一时候也是  ZOJ1877.经典的过桥问题 是有个博客解说的非常好的 戳这里 挺久曾经.遇到过一个基本一样的,那个题目仅仅要求求出 最短时间就可以,如今还有过桥的过 ...

  5. 【ACM】nyoj_47_过桥问题_201308151616

    过河问题时间限制:1000 ms  |  内存限制:65535 KB 难度:5描述 在漆黑的夜里,N位旅行者来到了一座狭窄而且没有护栏的桥边.如果不借助手电筒的话,大家是无论如何也不敢过桥去的.不幸的 ...

  6. 解决N个人过桥时间最短问题(Java版本)

    [问题描述] n个人要晚上过桥,在任何时候最多两个人一组过桥,每组要有一只手电筒.在这n个人中只有一个手电筒能用,因此要安排以某种往返的方式来返还手电筒,使更多的人可以过桥.   注意:每个人的过桥速 ...

  7. Hznu_oj 2340 你敢一个人过桥吗?

    Description 在漆黑的夜里,N位旅行者来到了一座狭窄而且没有护栏的桥边.如果不借助手电筒的话,大家是无论如何也不敢过桥去的.不幸的是,N个人一共只带了一只手电筒,而桥窄得只够让两个人同时过. ...

  8. tc 146 2 BridgeCrossing(n人过桥问题)

    SRM 146 2 1000BridgeCrossing Problem Statement A well-known riddle goes like this: Four people are c ...

  9. H3C通过桥ID决定端口角色

随机推荐

  1. struts2 java.io.FileNotFoundException: http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd

    xxx-validation.xml 文件里  java.io.FileNotFoundException: http://www.opensymphony.com/xwork/xwork-valid ...

  2. NYOJ1026 阶乘末尾非0 【模板】

    阶乘末尾非0 时间限制:2000 ms  |  内存限制:65535 KB 难度:3 描写叙述 我们的问题非常是简单.n! 末尾非0数是几? 比方n=5的时候,n! =120,那么n!末尾非0数是2. ...

  3. 对ASP.NET MVC 的路由一点理解

    这个东西,真搞不懂.看了网上的教程和文章,也不懂(也不清楚写那些文章的人自己是否真的懂).只好靠自己一顿乱摸索. 好比说,下面这个路由: //路由1 config.Routes.MapHttpRout ...

  4. vs2013发布网站提示 “未能将文件**复制到**”

    原因:年久失修,原来在项目中的一些文件给删掉或移除了 解决方法:打开.csproj文件(记事本打开),把提示的文件给删除掉.

  5. Educational Codeforces Round 17 D. Maximum path DP

    题目链接:http://codeforces.com/contest/762/problem/D 多多分析状态:这个很明了 #include<bits/stdc++.h> using na ...

  6. Codefoces 791D. Bear and Tree Jumps 树形DP

    D. Bear and Tree Jumps   A tree is an undirected connected graph without cycles. The distance betwee ...

  7. mysql05---游标

    drop procedure p12$ //删除存储过程 //游标cursor,一条sql对应n条资源,取出资源的接口/句柄就是cursor, 一条sql产生的n条结果不是一次性全部输出,而是返回一个 ...

  8. POJ1458 Common Subsequence —— DP 最长公共子序列(LCS)

    题目链接:http://poj.org/problem?id=1458 Common Subsequence Time Limit: 1000MS   Memory Limit: 10000K Tot ...

  9. YTU 1003: Redraiment的遭遇

    1003: Redraiment的遭遇 时间限制: 1000 Sec  内存限制: 128 MB 提交: 198  解决: 71 题目描述 Redraiment的老家住在工业区,日耗电量非常大.是政府 ...

  10. mac终端命令加密压缩文件为zip包

    mac终端命令加密压缩文件为zip包,命令如下: zip -e ~/desktop/a.zip b.doc c.txt d.sql 注释:a.zip为加密后的文件 b.doc c.txt d.sql为 ...