贪心
文章平均质量分 73
「已注销」
混子一个
展开
-
51nod 1191-贪心+并查集
首先不得不承认这题写残疾了,本来是优先队列随便搞一下就过了(确保弹出来的箭能杀死兔子),这里贴一下当时另一种贪心思想写的,运用了并查集,对于箭贪心,每次杀能杀死的最大的兔子之后得到解,这里要用并查集动态维护一下x的箭杀什么兔子,乱搞一气也算过了。#include #include #include #include using namespace std;int n,m,nn原创 2016-03-15 20:58:39 · 381 阅读 · 0 评论 -
hdu 5661贪心二进制
这题写起来很奇怪所以发个博客以后复习,题意 是给你两个区间, 让你从中选出两个数,使得他们的异或值最大,1e18的范围,取得异或值最大肯定要高位越大越好了,一路贪下去那么分情况讨论,计算在第x位的时候两个数可以取0还是1还是都可以,所以写一个判断函数,(由于都可以不好讨论不妨求出只能是0和只能是1的)当两个数都是都可以取时候要注意,这里贪心 将能剩余选择空间更大的取1,显然用原创 2016-04-12 19:49:58 · 348 阅读 · 0 评论 -
hdu-1688次短路问题
最近才听说次短路问题,以为挺简单其实是眼高手低,题目意思就是裸的次短路,问最短路的个数和与最短路差1的个数和,考虑dijkstra的特性,可以利用每次进队列的方式方式实现。朴素的dij就是进dis数列中的最小的,还要标记vis,那么次短路可以看做分类讨论首先开出最短路和次短路的dis,cnt,和vis,那么入队方式什么的都和朴素的一样,但是注意分类讨论,如果拿出来的是个原创 2016-04-18 10:30:39 · 572 阅读 · 0 评论 -
Codeforces #353 (Div. 2)C 贪心脑洞题
太弱了。。还是笨。。原题这题脑洞题,说一下贪心思路。首先我们注意到 如果连续一段和为0,其他部分耿直的转移,那么就能少移动一次(中间不考虑子段,只让这一段变成了0),如果 这一段后面还有连续的一段和为0 ,那么就能少移动两次。。以此类推。。。例如 xxxxxxxxxxx1 2 -2 -1 1 -1xxxxxxxx如果中间那些耿直的移动一定是要移动6次才能都是0的,如原创 2016-06-19 21:28:24 · 329 阅读 · 0 评论 -
CF 738D 贪心
http://codeforces.com/contest/738/problem/D题意:小时候玩的潜艇游戏,只不过题目是在一维上面,已知有一些长度为L的潜艇,玩家已经侦测了一些位置但是没有发现潜艇,问题是玩家再侦测那些位置可以确保发现潜艇。思路:贪心取就好,首先把可能有潜艇的区间拿出来(长度大于等于L的),然后对于这些区间每隔L就取一个,并且可能放的最多的潜艇-1,重复上述原创 2016-11-22 16:05:46 · 295 阅读 · 0 评论 -
poj-3134 ida*||记录路径bfs
http://poj.org/problem?id=3134题意是一个x的n次方,最快的运算个方式。。。不会做看题解是个IDDFS。。。太高深暂时先不研究,以后填坑。。这里考虑一个BFS的做法,一开始以为直接记录父节点类似并查集那样的寻找相关然后记录最小值就可以了。。后来发现相等的时候父节点不一定取哪个最好,这里学习了一个方法,在节点里面记录来的路径,由于自己不会算空间复杂度,还以原创 2016-04-30 20:07:26 · 812 阅读 · 0 评论 -
Educational Codeforces Round 55 E 分治
题意:一个数组,选一个连续区间[L,R] 使得 区间内相同的数 + 区间外a[i]=c的个数最多思路:似乎可以o(n),这里提供一个O(nogn)的分治方法,这类只选一个区间的问题很容易想到分治法,难在如何合并左右区间,这里我们贪心合并即可,维护一下 左右可并的每种a[i] 的最优答案。可能表述不清,详细见代码。代码:#include<bits/stdc++.h>#de...原创 2018-12-01 13:29:56 · 178 阅读 · 0 评论