题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&category=159&page=show_problem&problem=958 题意:n个星球,用最短的时间把k个超级计算机从s运到t: 其中,每个隧道是双向的,一个隧道里面只能有一个飞船在使用,一个飞船上只有一台计算机. 分析: 一个隧道只能给一个飞船用,那么假设需要t天,那么可以这样建图: u结点,拆成…
题目大意: 给定 n m s t :表示n个点编号为0~n-1 m条边 起点s终点t 接下来一行给定n个数:表示第i个点的救援队数量 接下来m行给定u v w:表示点u到点v有一条长度为w的边 求从s到t的最短路有几条 一条路上可以集合的救援队最多有多少 输出路径 #include <bits/stdc++.h> using namespace std; #define INF 0x3f3f3f3f #define LL long long #define inc(i,j,k) for(int…
ACM Computer Factory POJ-3436 题目就是一个工厂n个加工机器,每个机器有一个效率w,q个材料入口,q个材料出口,每个口有三个数表示状态,1表示一定有入/出的材料,0表示没有入/出的材料,2表示可能有入的材料.如果一个机器入口全是0,代表这是起始机器,如果一个机器出口全是1,那么代表这是末尾机器. 将每个机器i拆成两点i和i+n分别代表进和出 建立超级源点,连在起始机器上,流量INF. 建立超级汇点,找到末尾机器连在超级汇点上,流量INF. 一个机器拆成的两个点i和i+…
强连通算法推断是否满足2-sat,然后反向建图,拓扑排序+染色. 一种选择是从 起点開始,还有一种是终点-持续时间那个点 開始. 若2个婚礼的某2种时间线段相交,则有矛盾,建边. easy出错的地方就在于推断线段相交. 若s1<e2&&s2<e1则相交 输出路径的做法能够參考论文2-SAT解法浅析 #include <iostream> #include<cstring> #include<cstdio> #include<string…
题目链接: https://vjudge.net/problem/UVA-624 题目大意: 这道题给定一个时间上限,然后一个数字N,后面跟着N首歌的时间长度,要我们 求在规定时间w内每首歌都要完整的播放,最多能播放多少时间.一个比较典型的背包问题, 但是要标记出我们选出的歌曲的编号,然后按顺序输出他们的长度,最后输出求的的最长 播放时间. 思路: 这里要求输出路径(任一条即可),所以加了一个vis数组,如果在递推过程中,某一件需要拿的话,就标记下来,最终可以从后往前推导出具体路径,因为从后往前…
package org.xiu68.exp.exp10; import java.util.ArrayDeque; import java.util.ArrayList; import java.util.Arrays; public class Exp10_2 { //实现Ford-Fulkerson算法,求出给定图中从源点s到汇点t的最大流,并输出最小割. public static void main(String[] args) { // TODO Auto-generated meth…
<题目链接> 题目大意: 你要录制时间为N的带子,给你一张CD的不同时长的轨道,求总和不大于N的录制顺序 解题分析: 01背包问题,需要注意的是如何将路径输出. 由于dp时是会不断的将前面所选物品更新的,所以我们输出路径时,应该倒序,将用过的物品减去,才能得到正确的路径. #include <cstdio> #include <iostream> #include <algorithm> #include <cstring> using name…
http://acm.hdu.edu.cn/showproblem.php?pid=1026 模拟一个人走迷宫,起点在(0,0)位置,遇到怪兽要和他决斗,决斗时间为那个格子的数字,就是走一个格子花费时间1, 遇到有数字的格子还要花费这个数字大小的时间,输出最后走到(n-1,m-1)的最小时间,还要输出他的路径,'X'是墙,‘.’是可以走的空地 就是这个路径,刚一看题看到那个样例输出吓得我都飞起来了,好多啊! 其实还好啦,广搜,一开始还因为是普通的广搜,后来发现不一样, 为了寻求最小时间,他可以选…
codevs1684 垃圾陷阱  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold   题目描述 Description 卡门——农夫约翰极其珍视的一条Holsteins奶牛——已经落了到“垃圾井”中.“垃圾井”是农夫们扔垃圾的地方,它的深度为D (2 <= D <= 100)英尺. 卡门想把垃圾堆起来,等到堆得与井同样高时,她就能逃出井外了.另外,卡门可以通过吃一些垃圾来维持自己的生命. 每个垃圾都可以用来吃或堆放,并且堆放垃圾不用花费卡门的时间. 假设卡…
package pers.zbb.File; import java.io.File; public class FileDemo { public static void main(String[] args) { File file = new File("E:\\IO流"); getFileAll(file); } public static void getFileAll(File file) { File[] files = file.listFiles(); for (Fi…