国家集训队论文集冯威课件

上传人:阳*** 文档编号:119748797 上传时间:2022-07-15 格式:PPT 页数:29 大小:422KB
返回 下载 相关 举报
国家集训队论文集冯威课件_第1页
第1页 / 共29页
国家集训队论文集冯威课件_第2页
第2页 / 共29页
国家集训队论文集冯威课件_第3页
第3页 / 共29页
点击查看更多>>
资源描述
国家集训队论文集冯威课件国家集训队论文集冯威课件v 在面对多种多样的问题时,我们经常会碰到这样的情况:往往我们能够根据题目题面意思来建立一些简单的模型,但却面对这些模型无从下手。这时我们应该意识到,也许能够将这种模型与其他的模型之间搭起一座桥梁,使我们能够用更简单直接的方式解决它。这里我们介绍一种方法,它很好地将某些特殊的不等式组与图相联结,让复杂的问题简单化,将难处理的问题用我们所熟知的方法去解决,它便是差分约束系统差分约束系统。这里我们着重介绍差分约束系统差分约束系统的原理和其需要掌握的bellman-ford算法。然后通过zju1508和zju1420两道题目解析差分约束系统在信息学题目中的应用,并逐渐归纳解决这类问题的思考方向。国家集训队论文集冯威课件v算法简单介绍算法简单介绍 这个算法能在更一般的情况下解决最短路的问题。一般在:1.该算法下边的权值可以为负 2.可以运用该算法求有向图的单元最长路径或者最短路径.3.国家集训队论文集冯威课件v松弛技术松弛技术:对每一个结点v,逐步减小从起点s到终点v最短路的估计量distv直到其达到真正的最短路径值mindistv。以单元最短路径为例这个操作就是保证 distvdistu+wu,v then distv=distu+wu,v 如果是最长路径则是保证distv=distu+wu,v 国家集训队论文集冯威课件v伪代码如下伪代码如下:For i=1 to|V|G|-1 Do for 每条边(u,v)Do 更新操作(u,v,w(u,v)For 每条边(u,v)Do if 仍然有可更新内容 then return FalseReturn True国家集训队论文集冯威课件MAXMAXMAXMAX06785-2-4-3792ST6MAX7MAX06785-2-4-3792ST647206785-2-4-3792ST247206785-2-4-3792ST图例中,S为源节点,粗线段覆盖的边表示最近一次执行更新操作的边。算法执行|V|-1次操作,每次操作都对所有可以进行松弛操作的边进行扩展。国家集训队论文集冯威课件v最终状态如下图。247-206785-2-4-3792ST国家集训队论文集冯威课件v证明算法的正确性证明算法的正确性 1设G=(V,E)为有向加权图,源节点为S,加权函数为w:E-R。如果有负权回路则Bellman-ford算法一定会返回布尔值false,否则返回TRUE。2设G=(V,E)为有向加权图,源节点为S加权函数为w:E-R,并且G不含从s可达的负权回路,则算法Bellman-ford终止时,对所有从s可达的结点v有dv=mindist(s,v)。国家集训队论文集冯威课件v对于解决差分约束系统问题的操作过程和使用原理,我们通过下面一道简单的题目进行了解。v引例:Zju1508 Interval 题目大意:有一个序列,题目用n个整数组合 ai,bi,ci来描述它,ai,bi,ci表示在该序列中处于ai,bi这个区间的整数至少有ci个。如果存在这样的序列,请求出满足题目要求的最短的序列长度是多少。如果不存在则输出-1。国家集训队论文集冯威课件v输入:第一行包括一个整数n,表示区间个数,以下n行每行描述这些区间,第i+1行三个整数ai,bi,ci,由空格隔开,其中0=ai=bi=50000 而且 1=ci=C的形式,我们从A向B连一条有向边,权值为-C。1)Sbi-Sai-1=Ci 2)Si-Si-1=0 3)Si-1-Si=-1 这样图就能完整地描述本题了!用Bellman-ford求解!11111000000-1-3-2例1S4-S0=2S6-S2=3S3-S1=1国家集训队论文集冯威课件v这样如果我们从V0出发,求出结点V0到Vn的最短路径,则Sn-S0为满足要求情况下的最小值。相反如果我们发现在Bellman-ford算法执行的过程中存在有负权回路,则说明不存在满足要求的式子。v于是通过合理的建立数学模型,将不等式图形化,用Bellmanford作为武器,最终此题得到了圆满的解决!国家集训队论文集冯威课件v线性程序设计线性程序设计:我们为线性程序设计问题制定一个严格的数学描述:给定一个m*n矩阵A,维向量b和维向量c,我们希望找出由n个元素组成的向量x,在由Ax=b所给出的m个约束条件下,使目标函数 达到最大值。n1iiixc国家集训队论文集冯威课件v其实很多问题都可以通过这样一个线性程序设计框架来进行描述。在实际的问题中,也经常要对其进行分析和解决。上述例题使我们对这一类线性程序设计问题提供了一个多项式时间的算法。它将一类特殊的线性不等式与图论紧密联系在了一起。这类特殊的线性不等式,我们称它为差分约差分约束系统束系统,它是可以用单元最短路径来求解的。国家集训队论文集冯威课件v差分约束系统差分约束系统:差分约束系统是一个线性程序设计中特殊的一种,线性程序设计中矩阵A的每一行包含一个1和一个-1,A的所有其他元素均为0。由Ax=b给出的约束条件形成m个差分约束的集合,其中包含n个未知单元。每个约束条件均可够成简单的不等式如下:xj-xi=bk(1=i,j=n,1=k=m)国家集训队论文集冯威课件v简单举例:3-3-1-4511-0 xxxxx 110001010001100010010010110010100010001154321国家集训队论文集冯威课件v找出未知量 x1,x2,x3,x4,x5,并且满足以下差分约束条件:x1-x5=-1 x2-x5=1 x3-x1=5 x4-x1=-1 x4-x3=-1 x5-x3=-3 x5-x4=-3需要注意的是,用Bellmanford求出的具体答案只是众多答案中的一种,答案并不唯一,但答案之间却也有着联系。这里我们并不对其进行专门的探讨。国家集训队论文集冯威课件v例题三 zju1420 Cashier Employment 出纳员问题vTehran的一家每天24小时营业的超市,需要一批出纳员来满足它的需要。超市经理雇佣你来帮他解决他的问题超市在每天的不同时段需要不同数目的出纳员(例如:午夜时只需一小批,而下午则需要很多)来为顾客提供优质服务。他希望雇佣最少数目的出纳员。经理已经提供你一天的每一小时需要出纳员的最少数量R(0),R(1),.,R(23)。R(0)表示从午夜到上午1:00需要出纳员的最少数目,R(1)表示上午1:00到2:00之间需要的,等等。每一天,这些数据都是相同的。有N人申请这项工作,每个申请者I在没24小时中,从一个特定的时刻开始连续工作恰好8小时,定义tI(0=tI=23)为上面提到的开始时刻。也就是说,如果第I个申请者被录取,他(她)将从tI 时刻开始连续工作8小时。你将编写一个程序,输入R(I)(I=0.23)和tI(I=1.N),它们都是非负整数,计算为满足上述限制需要雇佣的最少出纳员数目。在每一时刻可以有比对应的R(I)更多的出纳员在工作。国家集训队论文集冯威课件v输入 输入文件的第一行为测试点个数(=20)。每组测试数据的第一行为24个整数表示R(0),R(1),.,R(23)(R(I)=1000)。接下来一行是N,表示申请者数目(0=N=1000),接下来每行包含一个整数tI(0=tI=23)。两组测试数据之间没有空行。输出 对于每个测试点,输出只有一行,包含一个整数,表示需要出纳员的最少数目。如果无解,你应当输出“No Solution”。国家集训队论文集冯威课件v我们按刚才所讲到的方法对此题进行处理。这题很容易想到如下的不等式模型:设num i 为i时刻能够开始工作的人数,x i 为实际雇佣的人数,那么x I=r I 设s I=x 1+x 2+x I,得到 0=s I-s I-1=num I,0=I=r I,8=I=r I,0=I=连接的式子 国家集训队论文集冯威课件vs I-s I-1=0 (0=I=-num I (0=I=r I (8=I=r I-s 23 (0=I=C 的式子 我们从节点B 引出一条有向边指向 A 边的权值为C (这里注意由于左右确定,式子又是统一的=的不等式,所以A和B是相对确定的,边是一定是指向A的),图就建成了。最后枚举所有s 23 的可能值,对于每一个s23,我们都进行一次常规差分约束系统问题的求解,判断这种情况是否可行,如果可行求出需要的最优值,记录到Ans中,最后的Ans的值即为所求。国家集训队论文集冯威课件v对于许多复杂的问题,我们通常选择将不够清晰、难以处理的模型转化为容易理解、易于处理的模型。就像用已知的知识作为工具去探索未知领域一样,联想、发散、转化将成为相当有用的武器。本文选择了差分约束系统这样一个平台,通过介绍差分约束系统的相关知识和其在信息学问题中的应用以小见大,为读者提供一个解题的思路和技巧。国家集训队论文集冯威课件v谢谢
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!