ACM
Beyyes
Because of you...
展开
-
POJ2155【二维树状数组,区间修改,点查询?】【又被输入输出坑】
先上代码。一会解释#include #include #include using namespace std;//关键还是对树状数组理解比较深,差不多算是知晓了。//区间修改,点查询int a[1005];int c[1005][1005];int n,m;int lowbit(int x){ return x&(-x);}void原创 2013-08-09 19:03:11 · 1080 阅读 · 0 评论 -
UVA11995【I can guess the data structrue!!】【水】+UVA11991【map用法】
两份代码一份直接用C写的,一份用STL写的原创 2013-08-04 17:17:31 · 974 阅读 · 0 评论 -
POJ2031【计算几何+prim、坑】【练会调试】
题意比较难理解。。。。。。于是。。。#include #include #include #include using namespace std;struct vv{ double x; double y; double z; double r;};const double max=105.0;int n;double co原创 2013-08-02 18:00:36 · 664 阅读 · 0 评论 -
POJ2488(骑士遍历)【dfs个人第一题!】
dfs个人第一题,费尽千辛万苦,终于AC,一AC解万愁。果然自己亲自敲代码的过程学到不少。必作一总结。 先附代码,修改比较多,so,比较丑。原创 2013-07-27 22:27:47 · 1486 阅读 · 0 评论 -
POJ3349【hash应用】【被输入外挂坑好久】【hash No.1】
大致题意:在n (n两片雪花相等的条件:雪花6个角的长度按顺序相等(这个顺序即可以是顺时针的也可以是逆时针的) 然后我这一下午就陷入无尽的TLE当中了。 过程总结~1。抛开题意理解不说。 (以后绝不能看题解理解题意了,必须提高自己的英文阅读理解能力。)原创 2013-07-29 19:45:21 · 929 阅读 · 0 评论 -
HDU4658【各种partition】
1.HDU4651:将正整数n划分为不超过n的数的和。求有多少种划分的方案数。思路:设用p[n]表示将n划分的方案数,那么根据五边形数定理有:其中1,2,5,7这些数为五边形数,五边形数的通项公式为(这里的Pn和上面的p[n]不是一回事):2.HDU4658将n划分为最大值不超过n的若干个数之和,每个数最多出现m-1次。问有多少种方案?原创 2013-08-10 09:58:51 · 1892 阅读 · 0 评论 -
HDU4686【矩阵快速幂】
只能说自己以前做的那个矩阵快速幂太弱了,或者推的还不够。这道题把f(i),s(i),a(i),b(i)都合在一块了,一个5*5的矩阵。另外,反正在hdu就用%I64d,别管别的了。 keng...#include #include #include using namespace std;typedef __int64 LL;const LL maxn=1e18原创 2013-08-21 12:54:37 · 1041 阅读 · 0 评论 -
ural1890、Timus1890【树状数组解法】
看了好多资料,学会了dfs把树转化为区间进而用树状数组或线段树做,然后再折磨了我几天把区间修改和区间查询和点查询放在一起学会,今天试着写了个,一交AC,啪啪!!!扬气啊。。 现在逐条来写一下我的收获。1、dfs把树转成区间。 这个做法是参考网上大牛做法,自己在单步调试的过程中发现的问题。 每次建链表都是一个长链表,自己一开始以为只有一条链表,其实不原创 2013-08-20 10:52:06 · 1001 阅读 · 0 评论 -
HDU4675【GCD of scequence】【组合数学、费马小定理、取模】
看题解一开始还有地方不理解,果然是我的组合数学思维比较差然后理解了之后自己敲了一个果断TLE。。。。我以后果然还得多练啊好巧妙的思路啊#include #include #include #include #include #include #include #include #include #include #include #inc原创 2013-08-16 15:16:19 · 1292 阅读 · 0 评论 -
HDU4666+POJ2926【最远曼哈顿距离】
一开始就明白那个N*1《k的算法了,可无奈删除操作耗时还是太多,最后学习了STL set,map相应的用法,方便好多。STL真的是一个好工具#include#include#include#include#include#includeusing namespace std;multiset a[60005];int x[60005][6];int原创 2013-08-14 15:44:47 · 1005 阅读 · 0 评论 -
HDU4638【离线树状数组】
分析问题并考虑已知的数据结构。细节处理很重要。#include #include #include #include #include using namespace std;//用标记数组的话果然不对 比如样例3 1 2 5 4,走一遍之后,再从头开始进行遍历的话,3+1,3-1都有标记,后面的都加了1//还有得注意到底是什么情况下用sum(a)-sum(b原创 2013-08-12 11:36:28 · 1016 阅读 · 0 评论 -
倍增法的妙用
倍增法 例:给出n、x、p三个正整数,问(x^0+x^1+x^2+……+x^n) 对p取模的结果。数据规模:n、x、p等比数列求和公式? x^(n+1)-1 / x-1 ?我们能求出[x^(n+1)-1] % p的结果 但除以x-1如何解决?介绍两种“拆”法: x^0+x^1+x^2+x^3+x^4+x^5+x^6+x^7=(1+原创 2013-08-10 16:39:19 · 1408 阅读 · 0 评论 -
pku 1077 Eight【八数码、广搜、hash判重】
pku 1077 Eight(八数码) (广搜+hash判重)/*memcpy(&t,s,sizeof(s))&t: 目标; s: 源 ; sizeof(s): 源内存出复制出的大小 作用: 由s所指内存区域复制sizeof(s)个字节到t所指内存区域*//*memcmp(st[u],st[s],sizeof(st[转载 2013-07-26 17:31:42 · 1147 阅读 · 1 评论 -
HDU1385 【输出字典序最小的最短路】
这题经过的结点比较好处理。主要是字典序的处理。先是floyd做法,采用记录后驱的方法。 path[i][j]=j【初始化。。。】#include #include #include #include using namespace std;const int maxn=5000;const int INF=100000000;int n;int node[maxn原创 2013-09-04 21:24:43 · 1331 阅读 · 0 评论 -
HDU1181【有向图的传递闭包】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1181题意很简单。有用并查集做的。我这里用传递闭包做。有向图的传递闭包采用Floyd思想,可以判断任意两点之间是否有通路。PS:Floyd思想:对于每一对顶点 u 和 v,看看是否存在一个顶点 w 使得从 u 到 w 再到 v 比已知的路径更短。如果是更新它。这题代码:#in原创 2013-08-31 17:33:52 · 1228 阅读 · 0 评论 -
POJ3667【线段树、最大连续区间】
线段树暂时最后一题了吧,线段树果然可以做的很多很多,和DP结合起来对自己的要求更高了。自己要做的还差很远~这题调试了好长时间。。。 题意:1a:询问是不是有连续长度为a的空房间,有的话住进最左边 2a b:将[a,a+b-1]的房间清空 思路:记录区间中最长的空房间 线段树操作:update:区间替换query:询原创 2013-08-30 14:13:17 · 1136 阅读 · 0 评论 -
HDU4655【题意+分析】
哎这题有点意思。。一开始肿么看都不理解题意,发现好多ACM题都这样,好多英文意思不能完全理解,只得照样例猜啦,猜不出来?? 那就靠神队友解释了,囧。 就是排列,涂色使结果最大化。反正别人的博客把这题的题意解释的很清楚了,我这只小牛就把自己的拙思路稍提一下。 也许做题多了马上就能感觉出这题当 a1,an,a2,an-1这样排列顺序效果会最大化,囧。关键是代码实现的过程也很原创 2013-08-09 15:49:59 · 1043 阅读 · 1 评论 -
如此好的树状数组学习资料
树状数组学习系列1 之 初步分析——czyuan原创 其实学树状数组说白了就是看那张图,那张树状数组和一般数组的关系的,看懂了基本就没问题了,推荐下面这个教程:http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=binaryIndexedTrees 下面对树状数组进行一些分析。inline i转载 2013-08-05 16:35:17 · 892 阅读 · 0 评论 -
POJ3928、LA4329【树状数组】
借此题试验一下各种做法的效果~这题为ACM2008北京站某题,介于简单与中等之间,做出来,罚时不多基本可以铜了,所以这样的题还必须得会,进阶之路。add(a[i]+1,1)这样处理之后,再用sum(a[i])计算得出的便的确是比a[i]小的数目。结合树状图进一步了解下。树状数组异常的美妙~ add(a[i],1)后树状数组的改变或许很复杂。。 嗯嗯!!明白了。原创 2013-08-05 14:51:01 · 927 阅读 · 0 评论 -
【NEU8.3积分赛】
整体题目属于那种题目描述冗繁,但其实解法很暴力。1.ZOJ3708 《行车路线/公交车数目》 题意理解问题,囧,坑了队友。2.ZOJ3710 《会发展的朋友关系》 暴力搜索,结束的条件挺好,看题目时限直接暴力。while(1) {num=0;........if(num!=0) break;}3.ZOJ3713 《7 bit》 这题自己必重新过一遍,注意一下细节,原创 2013-08-03 18:43:46 · 897 阅读 · 0 评论 -
输入输出外挂
这个更全一些。有正负数。转载请注明出处:http://blog.csdn.net/a1dark//适用于正整数template inline void scan_d(T &ret) { char c; ret=0; while((c=getchar())'9'); while(c>='0'&&c<='9') ret=ret*10+(c-'0'),c=get原创 2013-09-06 19:00:14 · 1336 阅读 · 0 评论 -
codeforce344C
题目地址:http://codeforces.com/problemset/problem/343/A比赛的时候就囧了,只推出a后来看了题解,知道 题意:用最少的1Ω电阻拼出指定阻值(a/b)电阻.元件之间可以以串联或并联的方式连接.思路: 显然电阻越并越小,a/b的整数部分可以串联若干1Ω电阻解决.此时,有这样一条重要结论:如果最少用K个电阻构成a/bΩ电阻,那么b/a也原创 2013-09-18 15:33:38 · 1127 阅读 · 0 评论 -
HDOJ4602【一种巧妙的思路】
直接上思路吧我们可以特判出n 对于1 情况考虑: 第一种情况,被选出的不包含端点,那么有(n – k − 1)种情况完成上述操作,剩下未被圈的点之间还有(n – k − 2)个位置,可以在每个位置断开,所以共2^(n−k−2) ∗ (n−k−1)种方法。 第二种情况,即被选出的包含端点,那么有2种情况,并且剩余共(n – k − 1)个位置,所以共2 ∗ 2^(n –原创 2013-07-24 22:12:10 · 808 阅读 · 1 评论 -
【水】UVA10167birthday cake
1.两份代码 #includeint a[200];int b[200];int judge(int x,int y,int c){ int count1=0,count2=0; for(int i=0;i<2*c;i++) if(x*a[i]+y*b[i]==0) return 0; else if(x*a[i]+原创 2013-07-24 17:29:19 · 716 阅读 · 1 评论 -
Pell方程解法+连分数自己整理
1、首先学习一下连分数。原创 2013-07-21 12:41:40 · 4385 阅读 · 1 评论 -
JAVA大数类
JAVA大数类apihttp://man.ddvip.com/program/java_api_zh/java/math/BigInteger.html#method_summary不仅仅只能查JAVA大数类的API。总结的东西都可以查询。 大数类基本语法详细见这:http://www.babytree.com/user/showuser.php?uid=u6061080原创 2013-10-07 20:21:48 · 1103 阅读 · 0 评论 -
POJ3318【随机化算法挺有意思】
题目链接:http://poj.org/problem?id=3318原创 2013-09-15 09:15:51 · 1028 阅读 · 0 评论 -
关于判断可图、图单连通性几题
。。。原创 2014-05-14 21:38:04 · 3071 阅读 · 0 评论 -
省赛总结
第一次写比赛总结原创 2014-05-12 09:22:45 · 1263 阅读 · 1 评论 -
HDU4768(二分)
G++对太大的数报编译错误。 。原创 2013-10-05 09:30:21 · 861 阅读 · 0 评论 -
做过的二分图匹配题目汇总【不断更新】
1.Hdu4619:http://acm.hdu.edu.cn/showproblem.php?pid=4619某次多校的题目。最大独立集 = 顶点数 - 最大匹配数 可以确定每两个合为一体的话可以看作一二分图。 然后这个最大独立集。原创 2013-09-22 14:37:44 · 1171 阅读 · 0 评论 -
二分图匹配相关所有总结
1。一个二分图中的最大匹配数等于这个图中的最小点覆盖数König定理是一个二分图中很重要的定理,它的意思是,一个二分图中的最大匹配数等于这个图中的最小点覆盖数。如果你还不知道什么是最小点覆盖,我也在这里说一下:假如选了一个点就相当于覆盖了以它为端点的所有边,你需要选择最少的点来覆盖所有的边。2。最小路径覆盖=|G|-最大匹配数在一个N*N的有向图中,路径覆盖就是在图中找一些路经原创 2013-09-19 23:54:33 · 1542 阅读 · 0 评论 -
worf eat sheep, 最小割, hdu3046
原题在此:点击打开链接原创 2014-05-15 09:17:58 · 1090 阅读 · 0 评论 -
图论完备之旅
一些比赛暴露出来的问题。会的太少、不够系统、遗忘太多。前来填坑之旅。某些参考这篇文章:http://www.cnblogs.com/kuangbin/p/3228371.html 以及蓝图论书+训练指南。连通性问题1、判断可图性 见自己博客里这篇文章2、判断单连通原创 2014-05-15 09:34:37 · 1164 阅读 · 1 评论 -
poj3422 来一道费用流
题目链接 poj3422真是感觉网络流越来越神奇了。1、最小费用流 -- 最大费用流之间转化2、拆点3、费用 OR 流量 (cost, flow)#include #include #include #include #include #include #include #include #include #include using n原创 2014-07-26 22:22:02 · 1008 阅读 · 0 评论 -
hdu 4864 2014STD D题
1、要能够分析出贪心的理由2、在lv里面进行lower_bound : 因为对于task的time本来就已经是从大到小排好序的,对于task里的每个time我们应该从最小的level开始放, 因为可能在task后面有比较大的lv;3、lower_bound的用法4、二分的写法5、比较函数cmp#include #include #include #i原创 2014-07-23 07:43:48 · 936 阅读 · 0 评论 -
bestcoder round #1
1、拓扑排序,要求输出小的数尽量靠前,而不是字典序原创 2014-07-22 11:02:26 · 881 阅读 · 0 评论 -
poj2112,最大流,最优挤奶方案
按图论列表上来说是基础题。这道题是省赛之前过的,现在想再拿出来总结一下,感觉这个类型的题很经典。题意不叙述了,就是有奶牛和机器,每台奶牛分配一个机器,牛与牛、牛与机器、机器与机器之间都有一距离,求分配后的最大距离的最小值。一开始没明白啥叫“最大距离的最小值”,就是C头奶牛、K个挤奶器,C头奶牛若想到全部的挤奶器那里去需要一定的距离,C头奶牛当中某一头奶牛需要走的原创 2014-05-29 21:43:56 · 1414 阅读 · 0 评论 -
ZOJ2770,火烧连营,差分约束
差分约束关键在于明白为什么可以转化为三角不等式。还有对于不等式 Xi - Xj 。这ZOJ2770自己分析的还是挺正确的。具体分析不写了,附个代码= = 加注释可能稍微比较乱。#include #include #include #include #include #include #include #include #include #include原创 2014-05-28 23:06:32 · 1508 阅读 · 0 评论 -
HDU3622 二分几何+2-SAT
我还是单独把这个题拿出来写一下吧,原创 2014-05-21 23:14:56 · 922 阅读 · 0 评论