ACM训练日记—8月7日

      集训新的一周开始了,可能昨晚没睡好,早上的时候迷迷糊糊的,就没着急去做题,主要把最短路径算法剩的最后的内容回顾了一下,紧接着今天就A了两个题,晚上评判系统还崩了。

      第一道题是昂贵的聘礼,想娶酋长的女儿,要不花钱,要不可以用东西换(少花钱),换的话东西在别人手里,想得到还是要不花钱要不少花钱外加东西,但交易时有等级制度限制,与低一级的人交易后不能在和高一级的人交易,本题用迪杰特拉斯算法就可以解,至于迪杰特拉斯算法的思想,我感觉和prim算法想似,就像本题,找一个数组a[n]表示一点到其他点所需最少钱,本题用每一物品直接花钱买需要多少钱,然后利用贪心思想找到最小的一个,开始对a[n]更新, a[j]=a[k]+map[k][j]。通过a[n]中最小的a[k],做搭桥进行更新,最后得到a[1]就是娶到老婆可一花的最少的钱。

     第二道题是虫洞,给出了各个点之间移动要花的时间,给出一个单向的虫洞,可退回一定时间前,问有没有一条途径可以使其回到之前的时间去。其实该题就是求图中有没有负回路,利用Ford算法,这种算法也是用a[n]数组来记录起点到各点最小花费时间,不同的是要采取对边的枚举实现对a[n]的更新,一旦发现负回路,就返回就好了。

      其实我还做了一道题,只是无奈系统坏了,所以不知道对不对。明天再讲吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值