• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
LyonLys
愿意在角落唱沙哑的歌 再大声也都是给你 请用心听 不要说话 Contact me via E-mail: lyon.lys@gmail.com
博客园    首页    新随笔    联系   管理    订阅  订阅
上一页 1 2 3 4 5 6 7 8 9 10 ··· 35 下一页
2013年7月22日
poj 3169 Layout (差分约束)
摘要: 3169 -- Layout 继续差分约束。 这题要判起点终点是否连通,并且要判负环,所以要用到spfa。 对于ML的边,要求两者之间距离要小于给定值,于是构建(a)->(b)=c的边。同理,对于MD的,构建(b)->(a)=-c的边。然后就是(i+1)->(i)=0,两者距离大于0的限制。代码如下: 1 #include 2 #include 3 #include 4 #include 5 #include 6 7 using namespace std; 8 9 const int N = 1111;10 const int M = 33333;11 struct Ed. 阅读全文
posted @ 2013-07-22 04:04 LyonLys 阅读(237) 评论(0) 推荐(0)
poj 1716 Integer Intervals(差分约束)
摘要: 1716 -- Integer Intervals 跟之前个人赛的一道二分加差分约束差不多,也是求满足条件的最小值。 题意是,给出若干区间,需要找出最少的元素个数,使得每个区间至少包含两个这里的元素。 做法就是建立(b)->(a)=-2,(i)->(i+1)=1,(i+1)->(i)=0的边,然后跑一次spfa即可。 做完的时候,因为队列开太小,所以re了一次。代码如下: 1 #include 2 #include 3 #include 4 #include 5 6 using namespace std; 7 8 const int N = 11111; 9 struct. 阅读全文
posted @ 2013-07-22 02:45 LyonLys 阅读(159) 评论(0) 推荐(0)
2013年7月21日
poj 3159 Candies (dij + heap)
摘要: 3159 -- Candies 明明找的是差分约束,然后就找到这题不知道为什么是求1~n的最短路的题了。然后自己无聊写了一个heap,518ms通过。代码如下: 1 #include 2 #include 3 #include 4 #include 5 6 using namespace std; 7 8 const int N = 33333; 9 const int M = 155555; 10 struct Edge { 11 int t, nx, c; 12 } edge[M]; 13 int eh[N], ec; 14 15 void ini... 阅读全文
posted @ 2013-07-21 22:16 LyonLys 阅读(243) 评论(0) 推荐(0)
2013暑假集训 第三场个人赛总结
摘要: 7月20日,第三场个人赛。这场个人赛应该是最低谷了吧,整场比赛2y了一题以后就再也没出题了。IDOriginTitle0/11Problem ASPOJ SEGMENTSA1/94Problem BSPOJ STRDISTB26/124Problem CSGU 296C2/17Problem DCodeForces 3DDProblem ESPOJ MUSICE1/35Problem FCodeForces 185CF 这场比赛没什么好描述的。C题开始的时候贪心的思想错了,以为直接删除最小的数字就行了,结果搞了很久才搞到一组(98919 1)这样的数据,然后才知道是不停地删掉上升序列。然... 阅读全文
posted @ 2013-07-21 19:07 LyonLys 阅读(216) 评论(0) 推荐(0)
2013年7月20日
poj 1364 King (差分约束)
摘要: 1364 -- King 继续差分约束的题。如果是“lt”就构造(s+n+1)->(s)=-w+1的边,否则构造(s)->(s+n+1)=w+1的边。因为没有取等号,所以w要加减一。 因为没有其他限制,所以不用别的附加边。代码如下: 1 #include 2 #include 3 #include 4 #include 5 #include 6 7 using namespace std; 8 9 const int N = 111;10 const int M = N * N;11 const int INF = 0x55555555;12 struct Edge {13 ... 阅读全文
posted @ 2013-07-20 12:08 LyonLys 阅读(127) 评论(0) 推荐(0)
hdu 1384 Intervals (差分约束)
摘要: Problem - 1384 好歹用了一天,也算是看懂了差分约束的原理,做出第一条查分约束了。 题意是告诉你一些区间中最少有多少元素,最少需要多少个元素才能满足所有要求。 构图的方法是,(a)->(b+1)=c。还有就是所有的相邻的点都要连上(i+1)->(i)=0,(i)->(i+1)=-1。因为我对点离散了,所以就变成(rx[i])->(rx[i+1])=rx[i]-rx[i+1]。代码如下: 1 #include 2 #include 3 #include 4 #include 5 #include 6 7 using namespace std; 8 9 con 阅读全文
posted @ 2013-07-20 01:37 LyonLys 阅读(281) 评论(0) 推荐(0)
2013年7月19日
hdu 2312 Cliff Climbing (pfs)
摘要: Problem - 2312 一条很暴力,有点恶心的搜索。题意其实很简单,主要是pfs的时候拓展结点会有种麻烦的感觉。注意的是,这里的n和m跟平常见到的有所不同,交换过来了。我的代码就是在因为这个长宽的问题wa了一次。代码如下: 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 8 using namespace std; 9 10 typedef pair PII;11 typedef pair PPP;12 typedef pair PPPI;13 14 #define FI first1... 阅读全文
posted @ 2013-07-19 18:20 LyonLys 阅读(289) 评论(0) 推荐(0)
2013暑假集训 第二场个人赛总结
摘要: 在开头问自己一句,题解还能坚持多少场呢?不管那样,能坚持就继续坚持下去,就算我不喜欢打字。 好了,然后下面要正文了。7月18号,第二场个人赛。今天的比赛是另外一位10的大神yys出的,总体评价一下今天的题,虽然题目难度不算打,但是思维要求还是蛮高的,虽然有一道最小费用流的接近于模板题的题。然后,个人感觉,最近英语阅读水平降到不是路了,居然有一道大水题题意看了一场比赛都没看懂。_(:з」∠)_下面是题目来源,因为UESTC在比赛的过程中挂掉了,所以临时将DE两题改成SGU的两题了:IDOriginTitle30/100Problem ACodeForces 48DA2/20Problem ... 阅读全文
posted @ 2013-07-19 05:16 LyonLys 阅读(294) 评论(0) 推荐(0)
2013年7月18日
poj 1092 Farmland (Geometry)
摘要: 1092 -- Farmland 怎么最近做几何题都这么蛋疼,提交C++过不了交G++就过了。据我估计,原因是用了atan2这个函数,或者是其他一些函数造成了精度的影响。不管怎样,这题最后还是过了~ 解释一下题意,题目的意思是,给出一些边和点,要求找到简单多边形,也就是没有重复的点的多边形,而且多边形里面不能有其他的点。 于是,还是之前的做法,对于每一条边作为起始边,从这条边出发,找最往左的一个点,然后移动到那里。不停这样的模拟,直到走回起始位置,就计算多边形是由多少条边构成的。如果满足就对计数器加一,最后输出结果即可。最早通过的版本的写法是可以不用检查有没有点在多边形里面的: 1 #... 阅读全文
posted @ 2013-07-18 04:23 LyonLys 阅读(507) 评论(0) 推荐(0)
hdu 2473 Junk-Mail Filter (暴力并查集)
摘要: Problem - 2473 为什么标题写的是暴力并查集?因为我的解法跟网上的有所不同,方法暴力很多。 先解释题意,这是一个模拟处理垃圾邮件的问题。垃圾邮件要根据它们的性质进行分类。对于10w个邮件,操作M是这两个邮件具有相同的属性,属性是可以传递的,也就是说,1和2有相同属性,2和3有相同属性,那么1和3就有相同属性。操作S是将这个邮件分离出来,不和任何的邮件有相同属性。最后问不同属性的邮件有多少种。这么看来,这是一个并查集。网上的正解,是把那个删除的结点当成虚拟结点,继续放在那里。然后重新开一个新的结点来存放分离出来的结点。 而我的做法则是直接构造并查集树,我的树是会记录子结点有那些... 阅读全文
posted @ 2013-07-18 00:50 LyonLys 阅读(248) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 9 10 ··· 35 下一页
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3