自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Sky

  • 博客(23)
  • 收藏
  • 关注

原创 POJ 2247 小DP?

题意:定义H***数为质因子仅有2、3、5、7的数以及1,将所有的H***数排序,输出序列中第n个H***数。说是DP。。也看不出来啥DP的特征,Openjudge是把这题分到DP一类里了。因为H***数仅由特定的质因子构成,所以每一个H***数都可以由已知的H***数乘2、3、5、7得来。我们预处理出数据范围n以内的所有H***数,O(1)查询。处理方式很简单,代码易懂。唯一比较恶心的就是这道题的

2015-10-29 20:06:01 523

原创 Dinic 算法求最大流(最小割) POJ 2536

题意:给定n, m, s, v, 意思是有n只兔子,m个洞,兔子的跑步速度是v,兔子有s的时间跑进洞里,给定兔子和洞的坐标,问最少有多少只兔子在s时间内无法跑进洞里。 这道题是在Openjudge上看到的。。。。网络流。。。说好的NOIP有两道题从里面抽,然而加了这道网络流。要跪、♥碎。 于是去复习了一下以前看过的Dinic,有一段时间没写了,都快忘记了。数组范围都给忘了,RE了好多次。 这道题要求

2015-10-29 18:56:07 940

原创 POJ 2676 锻炼码力:数独,精确覆盖的DLX

题意:先给定数据组数T,每组数据都是一个数独游戏,输出它任意一个解。自从学了DLX之后,还没写过精确覆盖,只用自己YY代码写过一次可重复覆盖。这次写一个精确覆盖。数独麻烦的就是构建M矩阵,想了有一段时间。对于构建数独的M矩阵,大都是这样的套路: 行表示的是在某个位置填某个数。 列表示的是:某个位置是否有数,某一行是否有某个数,某一列是否有某个数,某一个块是否有某个数。只要记录清楚行、列对应的是那

2015-10-27 11:10:04 386

原创 Miller Rabin 算法验证素数 USACO 1.5 回文质数

题意:给定a, b,从小到大输出区间[a, b]中所有的回文质数。当一个质数反过来之后与之前相同时为回文质数。其实这道题不必用MR算法,直接暴力sqrt(n)判断一个数是否为质数可过。先说这道题,为什么要用到判断一个数是否为质数。a, b的范围是1亿,所以先筛素数再判断每个素数是否回文数是行不通的。所以要先生成所有的回文数,判断它是否为素数。而且,生成回文数的过程还需要一点点优化: 1.回文数长度

2015-10-26 22:07:50 382

原创 模拟赛记录(1):10.24 T3 有趣的有趣的家庭菜园 (线段树优化DP)

有趣的有趣的家庭菜园(C.c/cpp/pas/in/out) (Time Limit:1s Memory Limit:256MB) 【Description】 职业经营家庭菜园的JOI君每年在自家的田地中种植一种叫做IOI草的植物。IOI草的种子在冬天被播下,春天会发芽并生长至一个固定的高度。到了秋天,一些IOI草会结出美丽的果实,并被收获,其他的IOI草则会在冬天枯萎。

2015-10-26 07:21:54 278

转载 C++ string 用法概览

标准C++中的string类的用法总结相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用。但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯定的。也许有人会说,即使不用MFC框架,也可以想办法使用MFC中的API,具体的操作方法在本文最后给出操作方法。其实,可能很多人很可能会忽略掉标准C++中strin

2015-10-24 11:00:22 220

原创 BZOJ 3991 SDOI 2015 寻宝游戏(异象石) LCA + Set + DFS序

异象石 (stone.pas/c/cpp) 题目描述 Adera 是 Microsoft 应用商店中的一款解谜游戏。 异象石是进入 Adera 中异时空的引导物,在 Adera 的异时空中有一张地图。这张地图上 有 N 个点,有 N-1 条双向边把它们连通起来。起初地图上没有任何异象石,在接下来的 M 个时刻中,每个时刻会发生以下三种类型的事件之一: 1.

2015-10-23 15:53:11 2818 3

原创 「Poetize9」礼物运送 Tyvj 2033 DP

看到这道题的第一眼,搜索搜索。觉得n只有18除了搜索也没谁了。于是很快写出了搜索方法:sec(a, b, ta, tb, ed)当第一个人在a,已经用时ta,第二个人在b,已经用时tb,两人一共经过了ed个点。floyd预处理出每两个点之间最短路,每次枚举下一个被访问的点,以及被谁访问。华丽丽的阶乘级搜索,数据范围小到18也是不行,自己还脑残的地以为,优化优化。最终还是放弃了挣扎,又突然想到了一个词

2015-10-22 21:51:25 450

原创 NOIP 2013 火柴排队 (证明+乱搞之后的逆序对)

前两天做到一道关于逆序对的题,题解说这道题和 NOIP 2013 火柴排队相似,于是就抱着粘粘代码的心态看了看这道题。乍一看发现,这和逆序对有毛线关系。于是就想啊想想啊想(如果考场上这么想啊想想啊想肯定就TLE了)首先看到每一盒内任意两根火柴长度不等。我们思考什么时候满足距离:Σ(a[i]-b[i])^2最小。比较容易猜测到,当a,b两个序列同为升序或降序时,对应着的a[i]和b[i]使得这个和最小

2015-10-19 07:25:50 339

原创 NOIP 2014 解方程 Hash Hash Hash

hash,同余类,hash,同余类,hash,同余类。先默念三遍。简直神器。 这个多项式方程每个系数都是1w位的数,一看就知道必须要取模。70分做法就是取模,直接暴力算每个数是不是解,模的数好的情况下可以拿70,T3个点。怎么过这三个点呢?多项式方程f(x)是满足f(x) % p == f(x+p) % p的,这也是上述70分做法成立的原因。正解就是对于p的每个同余类,判断是否为解,如果x为解,x

2015-10-16 20:36:47 592

原创 NOI 2010 COGS 468 BZOJ 2006 超级钢琴 RMQ 堆 => 乱搞 (脑洞要大大的)

感觉做这种乱搞式的题脑洞一定要大,不然想不出来解法。而且这种题解法经常有很多。然而自己脑洞小得可怜,也没想出来哪个新的解法,所以还是看了看题解按照大众解法写的这道题。 T^T 我们把多个区间构成的集合看成一个状态,(i, l, r, v, p)一个五元组,代表区间左端点为i,右端点在[l,r]中,这些区间中和最大的为v,这个和最大的区间的右端点是p。 我们把这些状态放进堆中,每次取出v最大的状

2015-10-15 16:44:18 365

原创 POJ 2152 树型DP //很棒的题

题意:Z国有n个城市,从1到n给这些城市编号。城市之间连着高速公路,并且每两个城市之间有且只有一条通路。不同的高速公路可能有不同的长度。最近Z国经常发生火灾,所以当地政府决定在某些城市修建一些消防站。在城市k修建一个消防站须要花费大小为W[k]的费用。函数W对于不同的城市可能有不同的取值。如果在城市k没有消防站,那么它到离它最近的消防站的距离不能超过D[k]。每个城市在不超过距离D[k]的前提下,必

2015-10-14 19:15:40 703

原创 POJ 2752 KMP ? 或 HASH

题意:给一个字符串S,求每个i使得前缀字串i等于后缀字串i。虽然看起来就像是要用KMP的一些思想的,但是看起来还是可以用Hash的。。。 偷懒的我就用Hash写的,RKHash。不过一开始,K取131,P取10000000031时候直接Wa了,之后抱着试一试的心态把K改成31,P改成1000000031(去了一个0),就AC了。 乘爆unsigned long long了?#include <cs

2015-10-14 06:31:13 401

原创 POJ 2449 A* 求 k 短路 模板题

题意:n个点,m条边的有向图,求s到t的第k短路。 输入:n,m,m条边(u,v,w),s,t,k。【多组输入】A*算法求第k短路模板题。也是自己第一次写A*写完这个后,进一步理解了Dijkstra的搜索本质,只不过经常我们使用Dijkstra算法的时候是为了求源点到所有点的最短路,称不上搜索。自己理解的A*,像是Dijkstra + 估价函数。A*去掉h那一部分,就是Dijkstra了,而又因为

2015-10-13 10:23:56 445

原创 POJ 1084 搜索(IDA*)

题意:给一个由(n+1)*n*2根火柴棒构成的边长为n正方形,每根火柴棒都有编号,已经删去了k根火柴棒,问至少再删多少根火柴棒可以破坏掉所有正方形。 【刘汝佳:《算法竞赛入门经典(第二版)》 P213】【小吐槽】 感觉做这道题的历程真是哔了狗了。一开始自己写了个暴搜果断就T了,主要是判断每个正方形存在与否的方法太暴力。之后在网上看到很多人都写的DLX,被如何记录正方形存在的方式恶心到的我下狠心决

2015-10-13 08:57:47 2715 4

原创 DLX Dancing Links X Algorithm 舞蹈链 学习总结

最近练习搜索题时遇到一类题总是会看到DLX写的题解,于是决定花一些时间学一学。 它可以用来解决覆盖问题,可重复覆盖、精确覆盖。而且DLX算法是目前已知的十分不错的解决数独问题的算法(T^T我并不会),不过至少覆盖这一类问题,我可以用它来解决了。暂时以可重复覆盖为例,因为要解决眼前的一道题→.→ 是这么一类问题:有一些由整数1~n组成的集合S1,S2,S3……Sm,要求选择若干个集合,使得这些集合

2015-10-10 21:29:47 855

原创 POJ 3539 同余类BFS

【残缺地理解同余类BFS】 题意:一栋h层的楼(h <= 10^18)的电梯上一共4个按钮:上升a层,上升b层,上升c层(a, b, c <= 10^5),和下降至1层,初始在1层,问有多少层通过电梯可达。第一次做同余类BFS,之前处于一个不明觉厉的状态,现在稍微理解了一点点。同余类BFS可以看作一种求最短路的方法,在BFS的基础上加个取模。然而蒟蒻理解的并不彻底,先拿这道题说说吧。假如我们现在电

2015-10-10 11:29:25 1172 4

原创 POJ 3323 搜索

那个经典的立方块游戏应该很多人都玩过,要求把立方块从给定的位置移动到(0,0)所需要步数的最小值。地图无限大,坐标可为负。算是3322的加强版?3322裸搜即可,加一些判断,直接BFS。而这道题坐标范围是10^9,显然不能搜索这么大的一个范围。不过考虑,因为地图无限大,没有那些点不能走的限制,所以这个游戏在距离目标点很远时肯定是以最少步数赶到一个比较近的地方执行最优策略。所以我们只需要提前预处理一下

2015-10-09 17:13:26 555

原创 POJ 1006 中国剩余定理

题意:POJ上有中文翻译,题目名称右面language可以选择简体中文。用中国剩余定理可以轻松解决,主要靠这道题学了学中国剩余定理,然而只学会了怎么写,原理还是不太理解。首先列出式子: p + x1 * 23 = n; e + x2 * 28 = n; i + x3 * 33 = n; 输出ans = n - d % 21252;方程组可以写为: n ≡ p (mod 23); n ≡

2015-10-09 10:09:10 345

原创 POJ 2688 简单的TSP问题,状压DP

题意: 考虑一个被分为 W × H 网格的房间,机器人是矩形的,大小为 1 × 1。房间内的格子被分为干净的,脏的和障碍物三种。机器人不能踏上障碍物,而机器人只要经过一个脏的格子,它就会被清洁成干净的格子。 机器人每步可以向四个方向(上、下、左、右)之一走一步,进入在这个方向上和它相邻的格子。机器人可以经过一个格子多次。 你的任务是求得机器人清理干净整个房间(即把所有的脏格子清洁成干

2015-10-08 12:03:51 532

原创 IDA* 解八数码问题: POJ 1077

刚刚学IDA*,再来写一遍八数码问题。又一次见证了别人家的代码和自己的代码的差距。别人家的链接:http://www.xuebuyuan.com/1863051.htmlh函数自己一开始写的是不在正确位置上的数码的个数,性能低下,T。 更优的一个,也是很多人用的一个就是所有数码与正确位置的曼哈顿距离之和。 然而自己写这个还是T,看了别人家的代码中有个小剪枝,加上后用C++编译还是T,使用G++,

2015-10-07 21:23:41 1219

原创 POJ 2286 搜索 (IDA*)

题意: 旋转游戏在一个井字形的棋盘上进行,棋盘上有 24 块,每块都标着 1, 2, 3 中的一个,并且对于每个数字,恰好有 8 块标着它。 一开始,所有的块是随机码放在棋盘上的。你的任务即为移动这些块,使得包围着正中心空格的 8 块都标有同样的数字。 移动的方式只有一种,即为“旋转”井字形四列中的一列。所谓“旋转”就是指,将这一列中的所有块向两个方向之一移动一格,并将移出棋

2015-10-07 20:06:55 354

原创 POJ 2032 搜索 (IDA*) 或 DLX

题意: 你有一间矩形的屋子,屋子的地面上铺着正方形的地板,共有 H 行 W 列。经过长时间的使用,一些地板损坏了。而你又没有钱将整间屋子的地板都换成新的,所以你决定用一些地毯将损坏的地毯盖起来。 然而,你需要遵守下面的注意事项: 所有的地毯都必须是正方形的。 地毯可以相互覆盖。 地毯可以是任意大小的。 地毯不能盖到屋子外面。 所有的损坏的地板都要被盖住。

2015-10-07 16:32:22 385

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除