- 博客(16)
- 资源 (1)
- 收藏
- 关注
原创 阿里巴巴2011公开赛1004 Level up HDU 3954 线段树
线段树,但是不会,没敲出来 。。。膜拜一下下面的两代码~ http://blog.csdn.net/wsniyufang/article/details/6702560 http://hi.baidu.com/yy17yy/blog/item/3fbaaced633cc3
2011-08-20 11:15:19 1207
原创 三种素数筛选法详解 (转)
转自:http://tr0217.blog.163.com/blog/static/3606648020099302135503/ 第一种:剔除2 3 4 5 6 ... ... 的倍数 在i从2开始的增一变化过程中,剔除i的倍数即j*i(j是大于等于2的自然数,j的
2011-08-17 00:19:10 17244
原创 poj 3298 Antimonotonicity DP
小菜菜说下这道题,因为15分钟搞定的,而且一次A了。 题意就是求最长的符合那个条件的序列,当然,不一定连续。 首先,如果没有任何符合条件的情况出现,那么最长的就是每个元素本身,长度为1。 思路:先说个概念,大元素:大于前面的,大于后面的。 从2出发,1是大元素
2011-07-29 21:05:47 1203
原创 poj 3666 Making the Grade (动态规划)
菜菜的说一下(若有幸被高人看见,请指导),初次学dp,这个题想了好久,不会~上网看了一个思路,看了好久,终于看懂了~ 好笨啊%>_ 先附此人博客: http://blog.sina.com.cn/s/blog_82a8cba50100tog6.html 题意:输
2011-07-29 17:31:23 4192
原创 poj 1753||poj 2965 枚举+dfs
<br />今天编了1753 2965,枚举和DFS。刚开始自己不太会,思路是看别人的。<br />一共最多16步即可找到。枚举每一个情况。<br /> <br />poj1753<br /> <br />#include "iostream" #include "stdio.h" using namespace std; bool map[6][6],f=0; int dis[5][5]={{0,0},{0,1},{1,0},{0,-1},{-1,0}}; int step; vo
2011-03-16 12:50:00 1653 1
原创 组合博弈理论
<br />百度文库下载这个花了10个财富,拿来跟大家分享啦~<br /><br /><br /><br /><br />博弈论(一):Nim游戏... 1<br />博弈论(二):Sprague-Grundy函数... 4<br />Game theory初步... 7<br />寻找必败态——一类博弈问题的快速解法... 14<br />博弈论(一):Nim游戏<br />重点结论:对于一个Nim游戏的局面(a1,a2,...,an),它是P-position当且仅当a1^a2^...^an=0,其中^
2011-02-09 00:43:00 3383 3
转载 C++ 中_int64的用法(转)
在做ACM题时,经常都会遇到一些比较大的整数。而常用的内置整数类型常常显得太小了:其中long 和 int 范围是[-2^31,2^31),即-2147483648~2147483647。而unsigned范围是[0,2^32),即 0~4294967295。也就是说,常规的32
2011-01-11 10:35:00 1781
原创 poj 2251 Dungeon Master
<br />三维的地图,就是在原先的基础上加了一个方向,即z轴。其他的和二维的广搜一摸一样。<br /> <br />现在这种基础的广搜做的还是比较轻松。<br /> <br />AC code:<br />#include "iostream" #include "stdio.h" using namespace std; char map[32][32][32]; int res[32][32][32]; int dis[6][3]={{1,0,0},{0,1,0},{0,0,1},{-1,0
2011-01-09 17:12:00 641
原创 poj 2488 A Knight's Journey(深度优先搜索)
刚开始练习搜索,今天做这个破题,做了一天到晚上9点才给AC,做到最后我差点崩溃了,在过程中我遇到了N多问题,最主要的原因无非就是方向问题。以前没有怎么用过方向数组,做那种简单的深度搜索题也就是简单的一个小范围直接用return f(x+1)+f(x-1)...就给解决了,可是这个却碰见了大麻烦。以前做二位数组总,有行和列在里面晃悠,所以总把它当得矩阵,矩阵的方向下好和直角坐标系反着,所以,我就做呀做,直到21点终于AC了。。。 通过这个题,明白了以后搜索,要严格区分这个方向和范围问题,用坐
2011-01-06 22:02:00 853
原创 poj 2236 Wireless Network (并查集)
<br />弄了一下午,终于把这个也弄AC了。<br />刚开始想修好一个后和已知的循环求距离然后合并,一想担心时间肯定不够,然后又看了网上的阶梯报告,结果就是这样,悲哀呀 (ˇˍˇ) 回头一看题目时间是10000MS。。。 <br /> <br />#include "iostream" #include "stdio.h" #include "cmath" using namespace std; struct point { unsigned int x
2011-01-05 17:56:00 642
原创 poj2492(并查集)
<br /> <br />今天一早AC了两道简单的并查集,2429和1703,这两道的思路几乎完全一样。用一个数组表示根节点,再用一个表示其与根节点的关系就OK了,每次合并与压缩路径的时候注意关系的更新。<br /> <br /> <br />虫子的同性恋,跟食物链是一样的,不过这个只有两个关系,比那个简单多了。<br /> <br />#include "iostream" #include "stdio.h" using namespace std; int n,p[2002],r[2002]
2011-01-05 15:02:00 1734 1
原创 poj 1988 Cube Stacking (poj 1182 食物链(转))
昨晚上和今一早,做了食物链后,便做了这个题,做的郁闷。刚开始的时候我拿最下面的当根节点,做出来后发现这样会漏情况的。比如:11M 1 10M 2 10M 3 10M 4 10M 5 10M 10 6C 10C 4M 4 8C 3C 4 这组测试数据,在M 4 8 合并后,元素三的下方就会漏掉一个箱子。后来实在没办法了,上网看了看,大家都是以最上面的为根节点o(╯□╰)o(自己好笨。。。),那样就不会出现问题了。自己写完代码后,怎么交都是WA,唉,然后没办法就又看了网上的源代码,一看几乎一样,但是我的就是叫不
2011-01-04 20:44:00 746
原创 poj 1182 食物链(转)
*食物链,自己还是不会做,刚开始搞的太乱。后来网上看了看解题报告,认真看了一遍,后来照自己开始写,几乎完成了全部,只是有一个判断真假的式子实在退步出来了,又看了一眼,后来还是WA,于是把循环输入给改了才AC,看了大牛的思路,题是懂了,但是自己单独就是编不上啊。。很郁闷。。 借鉴大牛然后自己总结了点思路:变种的并查集。其实这个还是两个元素之间的集合关系,最后都要并在一个集合里,只不过,每类元素和根节点的关系不同(用r[x]表示的),每次输入两个元素后先判断是否会满足三个错误的条件,(2)项就是一般的比较,可以
2011-01-04 10:45:00 1887
原创 转:scanf(), getchar(), 以及gets()函数注意点
<br />转:scanf(), getchar(), 以及gets()函数注意点<br /><br /><br />----------------------------------------------------<br />| 问题描述一:(分析scanf()和gets()读取字符) |<br />----------------------------------------------------<br /> scanf(), getchar()等都是标准输入函数,一般人都会觉
2011-01-03 16:34:00 774
原创 广度优先搜索 简单举例(maze)
<br />maze<br />Time Limit:1000MS Memory Limit:65536K<br />Total Submit:290 Accepted:103 <br />Description<br />500年前,Jesse是我国最卓越的剑客。他英俊潇洒,而且机智过人^_^。 <br /><br />突然有一天,Jesse心爱的公主被魔王抓走,并困在了一个巨大的迷宫中。Jesse听到这个消息,非常紧张。他知道公主在迷宫中还能坚持T个小时,他急忙赶到迷宫,开始到处寻找公主的下落。 <b
2011-01-03 11:53:00 3316
原创 HDU1325||HDU1272(小希的迷宫)
整了以造成终于把HDU 上小希的迷宫交对了。判断的那块太头疼了。最后有参考了网上一个代码 把自己的优化了一下。 #include "iostream" #include "stdio.h" using namespace std; #define N 100002 int set[N],rank[N],mark[N]; int make_set() { int i; for(i=0; i
2010-12-30 15:11:00 1101
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人