自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (12)
  • 收藏
  • 关注

原创 hdu 4630 多校第二场 树状数组,离线处理

1-n的排列,询问(l,r)之间的最大的gcd(a,b)(1)离线处理,询问对按右端点排序,边插入边查询,使在处理(l,r)时,(l,r)内的该插入的已经插入(2)枚举每个数的约数,记录到当前位置为止,上一个x的倍数出现的位置prev(x)#include #include #include #include #include using namespace std;

2013-07-31 18:01:53 914

原创 hdu 4620 多校第二场 搜索

直接水过,太挫了……关键是一开始读不懂题#include #include #include #include using namespace std;struct P{ int C,T,idx; int f[15];}obj[40];bool cmp(P l,P r){ return l.T<r.T;}int ans[40],ans_c

2013-07-30 10:43:31 874

原创 hdu 4616 经典树形dp 多校第二场

#include #include #include #include using namespace std;#define N 50500int trap[N],val[N],n,C,vis[N],ans;int dp[N][5][2];vectorvec[N];void DP(int u){ vis[u]=1; dp[u][trap[u]][0]=dp[

2013-07-29 21:18:10 1452 1

原创 hdu4618 多校第二场

不合理,居然不超时87137162013-07-25 22:08:30Accepted461846MS612K1107 BC++guowentian#include #include using namespace std;int n,m,mat[305][305];int main (){ int ncase

2013-07-25 22:33:17 703

原创 CodeForces 44J Triminoes

比赛时用了极其暴力的方法,赛后一看发觉自己太挫了……主要是没想到可以这样枚举因数#include #include #include using namespace std;int mp[100050];int main (){ int n,x,y; memset(mp,-1,sizeof(mp)); scanf("%d",&n); for(i

2013-07-21 18:24:20 904 1

原创 uva 11427 数学-概率

#include #include #include using namespace std;double d[305][350];int main (){ int ncase;scanf("%d",&ncase); for(int kk=1;kk<=ncase;++kk) { int a,b,n; scanf("%d/%d%

2013-07-20 15:29:17 786

原创 后缀数组 倍增算法 代码详解

sa[i],表示按后缀树那种排列方式,排在第i位的后缀是哪个后缀for循环里,y[i]表示对于现在的sa数组(排序处理到当前状况时),第二关键字第i大的第一关键字的位置x[i] 表示上图中每次要排序的序列,首字母在i的后缀的排位,是rank数组基数排序:每个元素的值对应一个槽radix,统计各个槽的累积个数,就能得到那个元素的排位char s[maxn];int sa[

2013-07-19 16:48:46 3411 2

原创 zoj 3724 树状数组经典

问题:n个点,对于每个点i,都有一条连向i+1的有向边,另外有m条其他的有向边,有q个询问(u,v)求u到v的最短路将m条有向边和q个询问对所表示的点对一起排序,(u,v)u大的排前,u一样的v小的排前,u和v一样大的先处理插入的再处理询问的;边插入边询问;树状数组里存的是右端点在v之后的询问的结果的差值(1)对于(u,v)uv) 的那些还没插入,树状数

2013-07-18 19:56:34 1585

原创 zoj 3725 DP排列

DP计数,有限制性条件下的计数无法直接推公式,一般含有重复,无法完全吻合这时选择dp,调用前面算出的结果 (two[i-m-1]-dp[i-m-1])用的妙!#include #include #include using namespace std;#define ll long long#define mod 1000000007#define N 100500

2013-07-16 20:05:53 978

原创 codeforces 78E - Evacuation 最大流

不能一一贪心暴搜,因为每个人的决策会对其他人产生影响必须用能考虑到全局的做法最大,全局,想到最大流初始化dp[t][x][y][nx][ny] 表示在t时间内能从(x,y)到达(nx,ny)有个地方要注意假如某点在k+1时间之前已经infected,下一步不能取但刚好在k+1时infected,可以到达#include #include #include

2013-07-16 11:10:02 1373

原创 codeforces 141E clearing up

理解错题意了,自环应该全部不取从中选出一些边组成一棵树,并使两种边的数量一样,自环取的话就不是一棵树了题目给的边中除去自环的那些,对应到树的边有三种:1.一定取M2.一定取S3.M或者S随机地打印出(n-1)/2所以要先构成一棵树,再慢慢调整#include #include #include #include #include using

2013-07-15 21:11:07 1189

原创 zoj 3529 博弈SG

理解当b[i] > b[i]^ans 为必败状态#include #include #include using namespace std;#define N 100005#define MAXN 50000int a[N+100],b[N+100],n;int prime[MAXN+4],cnt,isprime[MAXN+5];int cal(int obj){

2013-07-13 21:17:09 1151

原创 zoj 3638 经典容斥原理

有n种物品,要取m种出来,如果每种物品的数量没有限制,答案为C(m,m+n-1)---多重集的计数1.现在限制,某种物品大于x,解决方法是,m-=x 后 又按原来的方法解决2.限制 ,物品a1小于x1,a2小于x2,……转化为容斥问题容斥原理附上两种写法#include #include #include using namespace std;#define

2013-07-13 19:53:37 1253

原创 poj 2154 polya 计数

操作时旋转,很简单。关键在于计数要避免超时。算sum(N^(gcd(i,N)))/N , 1d=gcd(i,N),枚举i很慢,转换思维,枚举d,算出这个d对应有多少个i,d的可能取值就是所有 d | Ni=d*x,N=d*y, 要让x和y互质,1互质问题,整除问题最终归结为phi事实证明long long 很慢,能不用尽量不用对于直接枚举质因数的话,用l

2013-07-13 17:00:17 618

原创 poj 2409 简单polya

两种操作:1.沿着中心旋转,总共s个,转过i个,循环个数是s*i/lcm(s,i) = gcd(i,s)2.沿着轴翻转,注意本身在操作中不变的元素会对循环个数有贡献#include #include #include #include #include #include #include #include #include #include #include #i

2013-07-12 18:28:45 642

原创 poj 2417 离散对数模方程+哈希

事实又证明map慢死啦,慢了不知道多少倍#include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define ll long long#define mod 1000

2013-07-10 22:36:18 737

原创 hdu4059 容斥原理的好题

1.首先要知道4次方求和的公式2.注意求和公式中有除以30应该乘以30的逆3.容斥原理即 原来的所有和 -  1个质因数的倍数 + 2个质因数的倍数 - 3个质因数的倍数 + 4个质因数的倍数……每个质因数的贡献就是getsum(n/link[i]) * four(link[i]),比如质因数是2时,就是 (1^4+2^4+3^4+4^4......+(n/2)^4) * (2

2013-07-04 16:34:37 1145

原创 hdu2222 AC自动机入门 指针型模板

#include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define maxnode 10000*100#define sigma_size 26struct Node

2013-07-03 20:22:16 581

原创 HDU 3579 中国剩余定理 不互质的情况

#include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define ll long longll ext_gcd(ll a,ll b,ll &x,ll &y){

2013-07-03 15:42:46 1223

原创 hdu1695 容斥原理

抄来的代码,第一次搞容斥原理。原问题转化为 gcd(x,y)=k -> gcd(x/k,y/k)=1,两者互质的问题首先联想到欧拉函数,它是互质问题计数的工具,但它只能解决(x,y) 中x但现在范围不一样,就要用到容斥原理求出超出范围那些部分当(x,y)中x>y,要一个一个用容斥原理求【b+1,d】中每个数的质因数能否整除【1,b】中的数,那些不能的就是互质的区间中与i不互质的

2013-07-02 19:48:41 630

原创 POJ 1095 找规律+递归打印

#include #include #include #include #include #include #include #include #include #include #include #include using namespace std;#define ll long longstruct Node{ Node *left; Node

2013-07-02 14:15:13 817

暗时间-电子书

教你运用方法时间管理时间管理时间管理时间管理时间管理运用运用运用运用运用运用

2014-03-31

机器学习 andrew 讲义

andrew 网易公开课 机器学习 讲义 andrew 网易公开课 机器学习 讲义 andrew 网易公开课 机器学习 讲义

2013-08-01

C++ 学习路线

C++ 学习路线

2013-08-01

acm入门题目集合

acm入门题目集合

2013-05-04

题表ACM-poj

acm的好资料

2013-05-04

优秀网页设计素材

很好的设计素材,来自设计群。

2013-04-30

RMQ与LCA问题

算法学习

2013-03-08

C++标准程式库

C++标准程式库

2012-05-18

数据结构 C++

数据结构 C++

2012-05-18

Visual C++面向对象编程

Visual C++面向对象编程

2012-05-12

深入浅出MFC

讲的非常深入,看的懂你就程度很好了 FJDLKSJFKLDSAFDSA FDSFDSA

2012-05-12

空空如也

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

TA关注的人

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