随笔分类 -  基础算法-贪心

摘要:贪心题怎么做都不会啊,果然还是考智商的 如果没有平局,很好整,直接每次从对方最小的开始找一个己方最小且比他大的,找不到就负,否则即胜,这个贪心显然是对的。但是现在有了平局的1分,就不好这样了,因为平局的情况有时候可以选,有时候又有更优的策略。。考虑这样一种贪心:先比双方最小的,如果己方最小完胜对方最 阅读全文
posted @ 2019-11-13 16:38 Ametsuji_akiya 阅读(154) 评论(0) 推荐(0)
摘要:考前随便做点水题愉♂悦身心 有助于退役 这题意思其实就是说要把外向基环树森林改成一个环的最小代价。 依照套路,先对每棵基环树的树做dp,这里因为要是环,要把所有的树都拆成链,然后连接。所以考虑以最小代价拆掉每一个树。 因为对于树的每层,只能选择出一个儿子作为链的部分保留下来,所以贪心的尽量选权值大的 阅读全文
posted @ 2019-11-08 20:25 Ametsuji_akiya 阅读(223) 评论(0) 推荐(0)
摘要:题意:给无向图每一条边定向,使得每个点可达点数$R_i$最小值尽可能大,求方案。 条件反射想到二分答案,然后看怎么检验,发现要让所有点$R_i$大于等于某一个值,首先我们关注某些特殊的子图:如果有环的话,显然可以让他定向后各点互达,并且这样的定向并不会影响其他点的$R$。进一步看,如果一个子图,定向 阅读全文
posted @ 2019-10-23 17:14 Ametsuji_akiya 阅读(259) 评论(0) 推荐(0)
摘要:其实有些题真的是,即使翻看了题解,也可以解释一二原因,也并不能对这种做法有深深的认同感。。 因为题意说的是让序号小的优先在拓扑序中向左靠,也就是说,比如1号会被前面很多大序号的节点“堵住”,但是仍要优先让他先出来,所以这时候按字典序最小来做拓扑是不对的。。````` 反过来考虑: 引理:对于一张DA 阅读全文
posted @ 2019-10-22 09:24 Ametsuji_akiya 阅读(169) 评论(0) 推荐(0)
摘要:吐槽:扣了几个小时,大致思路是有了,但是贪心的证明就是不会, 死磕了很长时间,不想想了,结果码代码又不会码。。 深深体会到自己码力很差,写很多行还没写对,最后别人代码全一二十行,要哭了 以下可能是个人口胡瞎扯:首先n个点,每个点一个出边,所以这个图可能是有很多连通块,具体有以下几种形态: 环 内向基 阅读全文
posted @ 2019-09-03 19:19 Ametsuji_akiya 阅读(199) 评论(0) 推荐(0)
摘要:(贪心题的策略真的好迷啊,做了多少题还是不会做。。) 题目 贪心策略成功被我第一时刻就想歪了。然后后面都是对的qwq,真的是。。 正解应当是将报废时间排序,显然对于维修每一个建筑进行结束的越早越好,从小到大排。然后按顺序看可不可以修。如果当前时间加上维修时间够的话就加入,不够就看之前有没有哪个建筑耗 阅读全文
posted @ 2019-04-03 12:25 Ametsuji_akiya 阅读(142) 评论(0) 推荐(0)
摘要:P2060 [HNOI2006]马步距离 数据到百万级别,明显爆搜不行,剪枝也没法剪。先打表。发现小数据内步数比较受位置关系影响,但数据一大就不影响了。大概搜了一个20*20的表把赋值语句打出来。判断时贪心,看两点间位置差,根据x差或者y差的大小比较来采取两种不同跳法,直到在小范围内再直接借助打的表 阅读全文
posted @ 2019-03-19 21:41 Ametsuji_akiya 阅读(197) 评论(0) 推荐(0)
摘要:其实lyd书上的题目,在贪心那一张有,解法就不放了自己看。 个人觉得主要难点or瓶颈在于把覆盖问题化为区间选点问题,每个点对应一个能覆盖到他的区间。这个怎么说呢。。反正想到了就想到了,想不到就是想不到,也没什么说的。。。希望对其他题有借鉴价值(不过哪个**出题人还会出这种转化啊)。 然后就是区间上最 阅读全文
posted @ 2019-03-19 21:30 Ametsuji_akiya 阅读(131) 评论(0) 推荐(0)
摘要:地址戳这。N根木棍待处理,每根有个长x宽y,处理第一根花费1代价,之后当处理到的后一根比前一根长或者宽要大时都要重新花费1代价,否则不花费。求最小花费代价。多组数据,N<=5000 本来是奔着贪心来做的。首先按照套路想到排序,长优先宽再次从小到大。由于要不浪费,尽量按照顺序去找,第一次把花费仅为1的 阅读全文
posted @ 2019-03-14 19:38 Ametsuji_akiya 阅读(389) 评论(0) 推荐(0)
摘要:luogu翻译 一些山距离起点有距离且不同,m只猫要到不同的山上去玩ti时间,有p个铲屎官人要去把所有猫接走,步行速度为1单位每秒,从1走到N座山不停下,必须在猫玩完后才可以把他带走。可以提前出发。问所有猫最少等待时间之和。 这题一开始有个模糊想法就是$f[i][j]$表示前i个人接j只猫,但是猫是 阅读全文
posted @ 2019-03-02 18:12 Ametsuji_akiya 阅读(228) 评论(0) 推荐(0)
摘要:题目 求两数组归并后的数组最小字典序排列。 嘛,可能本人在贪心这块还是太弱了(或者说什么都弱),如果不知道是字符串题估计也想不起来用sa。 显然看得出归并时字典序小的那个数组先往里面加,这就是要比较两数组后缀的rank,方法就把两串相拼做后缀排序后比较。 这里附下贪心正确性证明,反正我不太会,只是感 阅读全文
posted @ 2019-02-08 08:54 Ametsuji_akiya 阅读(146) 评论(0) 推荐(0)