
偶滴ACM
文章平均质量分 64
SwordHoly
咱大四了..
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
ACM必须掌握的算法
论坛看到的搞ACM必须掌握的算法,惊出一身冷汗,原来自己还有很多不会啊.........第一阶段:练经典常用算法,下面的每个算法给我打上十到二十遍,同时自己精简代码, 因为太常用,所以要练到写时不用想,10-15分钟内打完,甚至关掉显示器都可以把程序打 出来. 1.最短路(Floyd、Dijstra,BellmanFord) 2.最小生成树(先写个prim,kruscal要用并查集,不好写)转载 2009-08-15 10:30:00 · 2434 阅读 · 0 评论 -
强烈推荐:论ACM与泡妞(ZZ)
abstract :本文从各个方面讨论了泡妞与做题之间的相似之处与不同点,尽量的站在一个公平的角度阐述这一问题,所得的研究成果填补了国内外的理论空白。泡了一个好妞就好像做了一道难题一样快感都是相同的。首先这两项活动都需要耗费大量的精力,一般都是20岁左右的时候,最有激情最有精力参加这两项活动。所以参加acm的同时大多都是适婚男青年,主要人群两者基本相同。就像普通人一辈子泡妞的日子不过三五年转载 2010-04-13 13:24:00 · 1142 阅读 · 0 评论 -
悲剧的TC,悲剧的1000__第一次TC小结
哥又悲剧了,欢迎大家来围观。。。TC里1000分的题悲剧的函数没写成public,本地编译的好好的在TC里死活编译不过,郁闷纠结,结束后在练习房一测82个数据轻松秒过,速度还奇快,狂吐血,我的命运怎么这么悲惨啊,我不服啊,不就个public嘛,至于这么贵吗,1000分啊,抓狂了。。。第一次去做TC,没想到题目这么水,250直接秒杀,看500的没想法,直接做1000的,一看迷宫问题,虽然要搞原创 2010-04-13 13:31:00 · 1012 阅读 · 1 评论 -
2010年省赛小结
16号下午1点出发,到4点多了才到杭州,期间司机貌似迷路了,囧。。之后的晚饭很丰富,酸菜鱼很好吃^_^,被折腾了一下午终于补回来了。 吃完饭想去超市买点东西,结果分两队人马对酒店四周进行了一遍宽搜,愣是一家超市都没找到,不得不说那个酒店地理位置很优越- -!晚上跟他们玩翻翻棋被虐了一晚上,权当积攒rp了。。之后看了盘dota比赛就睡觉了。总之赛前心态还是蛮好的,挺轻松的。 接下来就原创 2010-04-19 17:38:00 · 1699 阅读 · 1 评论 -
ACM中使用JAVA的介绍
Chapter I.Java的优缺点各种书上都有,这里只说说用Java做ACM-ICPC的特点:(1) 最明显的好处是,学会Java,可以参加Java Challenge (2) 对于熟悉C/C++的程序员来说,Java 并不难学,找本书,一两周业余时间就可以搞定了。当然,这里只是指一般编程,想熟悉所有的Java库还是需要些时间的。事实上,Java 只相当于C++的一个改进版,所有的转载 2010-04-24 09:42:00 · 717 阅读 · 0 评论 -
极度需要RP __ 浙江理工邀请赛 总结
省赛银奖前几名,ZSTU邀请赛又是铜奖前几名,RP完全不守恒嘛,哥注定就是一个悲剧人物,唉。 记一下比赛过程吧,LJ前三,我中三,tracyzhu后四。D题是关于dota的,求月之女祭司的神箭是否命中目标,具体就是给定一个源点和一个向量,求这个射线第一个命中的多边形是不是目标多变形,感觉可以写,可是又不敢写,向来很少写计算几何的题,毕竟精度问题一直是很让人纠结的。这时LJ说a题水题,原创 2010-05-10 00:39:00 · 1460 阅读 · 1 评论 -
挂机刷RP - -!
int main(){ int RP=0; while (true ) RP++;}原创 2010-05-10 00:46:00 · 1450 阅读 · 3 评论 -
AC自动机
<br />Tire和kmp的结合版,自动机里面所谓的失败指针即kmp里的next指针,唯一的区别是自动机是树形的,kmp是数组的,所以在字典树上加一个失败指针就成了自动机了,所有代码都不需要变,多写一个计算失败指针的函数就行了,计算失败指针一遍bfs即可,之所以用bfs是保证计算某个节点之前他的所有可能转移回去的点的失败指针都已经计算过了(有点拗口= =!因为它的失败指针指向的点的高度一定比它低,bfs能保证它的上面的层的节点都已经计算过了)。<br />代码如下:<br />/*<br />TRIE结构原创 2010-08-12 20:20:00 · 737 阅读 · 0 评论 -
JAVA大数类练手
<br />package buct_三国杀;<br />import java.util.*;<br />import java.math.BigInteger;<br />import java.io.*;<br />public class Main<br />{<br /> public static BigInteger C(int x, int n)<br /> {<br /> BigInteger ans = BigInteger.ONE;<br />原创 2010-08-12 20:32:00 · 786 阅读 · 0 评论 -
二分答案全攻略
<br />当直接求解答案比较困难时,可以枚举答案,再判断枚举得到的这个答案是否合法。<br />如果这个答案还具有单调性,就可以用二分加速枚举过程。<br />Kth Largest(http://acm.hrbeu.edu.cn/index.php?act=problem&id=1005&cid=14)(二次二分)<br />题意:<br /> A,B两个数组,求出两个数组互相乘以后生成的n*n个数中的第k大的数。<br />解法:<br /> 对A,B从小到大排序。<br /> 二分第k大的数的值原创 2010-09-10 14:47:00 · 3967 阅读 · 1 评论 -
Splay大功告成
写的时候很纠结,磕磕绊绊的,断断续续的搞了好几天,其实前几天就写完了的,不过没a过题,正确性没经过历史的检验。今天无聊在杭电找了道Splay的入门题a了下,情况竟然出奇的顺利,除了因为内存泄露超内存了几次,改正后竟然一次AC了,RP啊,这次终于爆发了,从来都没这么顺利过= =!既然有Splay了,平衡树什么的也就懒的去搞了,,先将就着用了= =!(指针版的,数组版的内存维护太麻烦,指针版好写点)//hdu1754#includeusing namespace std;#define MAXN 1原创 2010-09-07 13:13:00 · 944 阅读 · 0 评论 -
无聊贴个KMP模板
<br />快退化到连KMP都不会了,重写个KMP复习下<br />int next[MAXN],F[MAXN],S[MAXN];<br />void get_next(int *s,int l)<br />{<br /> int i,j;<br /> memset(next,0,sizeof(next));<br /> i=-1;next[0]=-1;j=-1;<br /> for(i=1;i<=l-1;i++)<br /> {<br /> while(s[j+1]!=s[i]&&j!原创 2010-10-26 18:59:00 · 755 阅读 · 0 评论 -
zz来自圣经的算法
<br /><br />《来自圣经的证明》收集了数十个简洁而优雅的数学证明,迅速赢得了大批数学爱好者的追捧。如果还有一本《来自圣经的算法》,哪些算法会列入其中呢?最近,有人在 StackExchange 上发起了提问,向网友们征集那些来自圣经的算法。众人在一大堆入围算法中进行投票,最终得出了呼声最高的五个算法:<br /> <br />第五名: BFPRT 算法<br /> 1973 年, Blum 、 Floyd 、 Pratt 、 Rivest 、 Tarjan 集体出动,合写了一篇题为 “Tim转载 2010-11-02 15:02:00 · 942 阅读 · 0 评论 -
子阵最小值查询_二维RMQ
给定一个n*n的矩阵,有q次查询,每次查询一个子矩阵最小值YY了一个n^2log(n)+n*q 的算法:建了n个一维RMQ,预处理n*n*log(n),每次查询复杂度O(n),果断TLEGoogle了一下才发现还有二维RMQ这种东西。。。对代码用类封装了下。。。RMQ_2D(O(n*n*log(n)*log(n)预处理,O(1)查询,查询以(x1,y1),(x2,y2)为对角的矩形最小值)<br />class RMQ_2D<br />{<br /> int dMin[MAXF][MAXF][MAXN][M原创 2010-11-09 18:13:00 · 1127 阅读 · 3 评论 -
强连通分量 (转)
最关键通用部分:强连通分量一定是图的深搜树的一个子树。 一、 Kosaraju算法1. 算法思路基本思路:这个算法可以说是最容易理解,最通用的算法,其比较关键的部分是同时应用了原图G和反图GT。(步骤1)先用对原图G进行深搜形成森林(树),(步骤2)然后任选一棵树对其进行深搜(注意这次深搜节点A能往子节点B走的要求是EAB存在于反图GT),能遍历到的顶点就是转载 2009-11-28 21:33:00 · 703 阅读 · 0 评论 -
字符串hash函数
著名的字符串hash函数--elfhash:Pascal代码: function ELFhash(x:string):longint;var i,h,g:longint;begin h:=0; for i:=1 to length(x) do begin h:=(h shl 4)+ord(x[i]);原创 2009-11-28 21:11:00 · 790 阅读 · 0 评论 -
编程之美—读后感
花了一晚上看完了《编程之美--微软技术面试心得》,里面要么是些智力题,要么是些稀里古怪的问题,都值得我们思考,题目描述也很有意思。解答也很精彩,一般都会给出好几个方法,极力荐之!!还有个感觉就是搞acm的在这方面绝对是有优势的,只要能有面试机会,像里面的面试题目基本都能秒杀的,里面的有些问题就是acm中的水题,像nim游戏(博弈),连连看算法(搜索),饮料供货(dp),求二叉树中节点的最大距原创 2009-11-24 23:21:00 · 1297 阅读 · 0 评论 -
ACM注意事项及一些小技巧
做题的一些心得,想到几点写几点,以后又想到了再补:1.scanf(),printf()和cin,cout不要混用,输入数据量比较大的话会导致缓存区冲突。2.对于大数组放到全局变量里,局部变量内存使用量不能超过64k;3.对于多组数据,每次算都要数据初始化;4.sort(first,last),last是past-the-end,就是要排序的元素的最后一个的后一个;5.对于需要不原创 2009-08-15 10:34:00 · 1586 阅读 · 1 评论 -
北大题目分类
原帖:一些图论、网络流入门题总结、汇总http://hi.baidu.com/zfy0701/blog/item/b8332b5c7b2dd545fbf2c052.html搜索题目推荐及解题报告http://hi.baidu.com/zfy0701/blog/item/c6e216ed18a9d24a78f05589.html字符串题目推荐及解题报告http://hi.baidu.com/转载 2009-08-17 13:58:00 · 1343 阅读 · 0 评论 -
北大ACM题目分类2
北大OJ主流算法: 1.搜索 //回溯 2.DP(动态规划) 3.贪心 4.图论 //Dijkstra、最小生成树、网络流 5.数论 //解模线性方程 6.计算几何 //凸壳、同等安置矩形的并的面积与周长 7.组合数学 //Polya定理 8.模拟 9.数据结构 //并查集、堆 10.博弈论 1、 排序 1423, 1694, 1723, 1727, 1763, 1转载 2009-08-20 14:55:00 · 839 阅读 · 0 评论 -
北大ACM题目分类3
POJ上一些题目在http://162.105.81.202/course/problemSolving/ 可以找到解题报告。《算法艺术与信息学竞赛》的习题提示在网上可搜到一.动态规划参考资料:刘汝佳《算法艺术与信息学竞赛》《算法导论》推荐题目:http://acm.pku.edu.cn/JudgeOnline/problem?id=1141 简单htt转载 2009-08-20 14:57:00 · 890 阅读 · 0 评论 -
浅谈ACM ICPC的题目风格和acm比赛近几年, 恩。。。看看吧,了解一下~~
ACM ICPC的比赛形式一般是五个小时八个题目,综合考察选手的数学能力、算法能力、coding能力和debug能力,还有团队配合能力。数学方面主要强调组合数学、图论和数论这三个方面的能力;而算法的覆盖范围很广,涉及了大部分经典的算法,和少量较前沿的算法。由于每道题目都需要通过所有的测试数据才能得分,并且需要精确解,这限制了Approximation algorithm在一些NP-hard的题目中转载 2009-08-29 16:33:00 · 1160 阅读 · 2 评论 -
2-SAT问题
[图论相关] [PKU 2749]Building roads 二分、构图、2-Sat验证 [图论相关] [PKU 3683]Priest Johns Busiest Day 2-Sat [图论相关] [PKU 3648]Wedding 2-Sat [图论相关] [PKU 2723]Get Luffy Out 二分、2-Sat验证 [图论相关] [PKU 3678]Katu Puzzle转载 2009-08-30 10:18:00 · 2176 阅读 · 0 评论 -
关于Bellman-Ford的几点思考
关于Bellman-Ford的几点思考:1.bellman-ford基本思想? 设s集合为,为与源点已经连接的点的集合,p为与源点不连通的集合。 开始时置s={源点},p={剩下的点}; 每次操作枚举所有边把符合条件的边上的点,加入s,或者更新其dis值,直到s={所有点};2.为什么是做n-1次松弛操作 每次松弛操作至少加一个节点加入到s中,因此松弛操作的次数的上限是n-原创 2009-09-03 00:12:00 · 1001 阅读 · 0 评论 -
最小费用最大流
最近为了写过最小费用最大流的模板网上找了很多资料,现将其整理如下:(版权归原作者所有)Dijkstra版: 【MCMF问题及数学模型】 在介绍最大流问题时,我们列举了一个最大物资输送流问题。如果这个问题的已知条件还包括每条边运送单位物资的费用,那么怎样运送,才能得到最大运输量,并且输送费用最少?这便是所谓最小费用最大流问题。 在最大流的有关定义的基础上,若每条有向边除权数c(e转载 2009-09-16 14:57:00 · 5152 阅读 · 0 评论 -
堆和栈的区别(转过无数次的文章)
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两回事,分配方式倒是类转载 2009-10-01 16:59:00 · 964 阅读 · 0 评论 -
数论中的一些公式(转)
数论中的一些公式以下等式或者不等式均可以用数学归纳法予以证明!1 + 3 + 5 + ... + (2n - 1) = n^21*2 + 2*3 + 3*4 + ... + n*(n + 1) = n*(n + 1)*(n + 2) / 31*1! + 2*2! + 3*3! + ... + n*n! = (n + 1)! - 11^2 + 2^2 + 3^2 + ..转载 2009-09-30 16:03:00 · 1573 阅读 · 1 评论 -
求 n元一次不定方程 解的个数 的 两个版本和n种实现方法
版本1: 有方程a1*x1+a2*x2+...an*xn=N,给定n(1000=>n>=1)个系数ai(1000>=ai>=0)和N(1000>=N>0),求满足这个方程的非负整数解(x1,x2...xn)的个数。(结果对10007取模) 实现1: 构造母函数,(1+x^1+x^2+..x^(N/a1))^^a1*(1+x^1+x^2+..x^(N/a2))^^a2...(1+x原创 2009-10-10 19:08:00 · 5290 阅读 · 2 评论 -
网络流算法集合 EK dinic 最小费用最大流 (Dijkstra实现)
终于快把网络流的模板写完了,先贴几个,存边用前向星实现,既保证了速度又免去了写链表的麻烦,代码绝对是你能找到的代码中最精简的//EK#include#includeusing namespace std;#include#define MAXN 300#define MAXFLOW 2000000000int n,s,t,m,flow[MAXN+1][MAXN+1],map[MAXN+1][M原创 2009-10-12 16:57:00 · 3378 阅读 · 3 评论 -
Nim游戏(转载)
Nim游戏(转载)Nim游戏是博弈论中最经典的模型(之一?),它又有着十分简单的规则和无比优美的结论Nim游戏是组合游戏(Combinatorial Games)的一种,准确来说,属于“Impartial Combinatorial Games”(以下简称ICG)。满足以下条件的游戏是ICG(可能不太严谨):1、有两名选手;2、两名选手交替对游戏进行移动(move),每次一步,选手可以在(一般而转载 2009-11-22 20:02:00 · 1754 阅读 · 0 评论 -
博客已搬家
即日起该博客不再更新。欢迎大家访问我的新博客:http://acm.nbu.edu.cn/SwordHoly/ ,欢迎大家跟我交换链接。原创 2011-09-26 17:06:54 · 1244 阅读 · 0 评论